傳感器實驗——485土壤溫濕度
- 材料及接線
- MR開發板
- 單片機TTL轉RS485模塊
- RS485 工業型土壤水分傳感器
- 示例程式
- 通訊協議(可不看)
- 基本命令格式:
- 查詢 1 號設備上水分傳感器資料
小伙伴們元旦快樂呀~
材料及接線
MR開發板

單片機TTL轉RS485模塊

接線說明
| 開發板 | TTL轉RS485模塊 |
|---|---|
| A3 | TXD |
| A2 | RXD |
| 5v | VCC |
| GND | GND |
RS485 工業型土壤水分傳感器
土壤含水率:規定條件下測得的土壤中水的量,以土壤的烘前質量與烘干質
量的引數對烘干質量的百分率表示,簡單地說就是:(濕重-干重)/干重×100%,
含水率為土壤中自由水的質量在土壤總質量中占的百分比,實際使用時,當土壤
中的含水量超過 24%時土壤已達到飽和且呈溢位水狀態,因此檢測含水量超過
24%的值沒有實際意義,農作物正常生長所需的適宜含水率土壤為 12%-20%范圍
之內,因此僅需要檢測低于飽和含水量 24%的含水量就滿足灌溉和各種生產實際
需要了

接線說明
| TTL轉RS485模塊 | 土壤水分傳感器 | 開發板 |
|---|---|---|
| A+ | TXD_A | |
| B- | RXD_B | |
| 5v | 5V | |
| GND | GND |
PS:基本485的接線都一樣了
示例程式
main.py
# main.py -- put your code here!
from pyb import UART,delay
u2 = UART(2, baudrate=9600)
barray = bytearray([0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B]) #問詢幀
# 0 1 2 3 4 5 6 7
while True:
u2.write(barray)
delay(1000)
if(u2.any()):
u2by=u2.read() # 回傳的是答應幀的內容
aa=u2by
shuifen = int.from_bytes(aa[3:5],'big') # 土壤濕度
shuifen=shuifen/100
wendu = int.from_bytes(aa[5:7],'big') # 土壤溫度
wendu = wendu/100
print(shuifen,"%")
print(wendu,"度")


通訊協議(可不看)
設備所有操作或回復命令都為 16 進制資料,默認通訊波特率:9600,8,n,1,
基本命令格式:
[設備地址][功能碼][起始地址:2 位元組][資料長度:2 位元組][CRC16 校驗:2位元組]
意義如下:
A、設備地址:設備地址范圍為 1-35,其中 250 即 0xFA 為通用查詢地址,當不知
道設備地址時,可用此通用查詢地址進行查詢,
B、功能碼:不同的應用需求功能碼不同,比如 3 為查詢輸入暫存器資料,
C、起始地址:查詢或操作暫存器起始地址,
D、資料長度:讀取的長度,
E、CRC 校驗:CRC16 校驗,高位在前,低位在后,
查詢 1 號設備上水分傳感器資料
發送碼
0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B
回傳碼
0x01 ,0x03 ,0x02 ,0x07 ,0x1C ,0x08, 0x2C , [CRC16]
上例回復資料中:x01表地址1,02表資料長度為2個位元組,由于測點資料長度占兩個位元組,比如第一個資料為07 1C, 折成10進制即為:1820,因模塊解析度為0.01,
該值需除以100,即實際值為18.20%,08 2C為溫度值,計算方法相同,
測驗如下:
>>>from pyb import UART,delay
>>>u2 = UART(2, baudrate=9600)
>>>barray = bytearray([0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B])
>>> u2.write(barray)
8
>>> u2by=u2.read()
>>> print(u2by)
>>> aa=u2by
b'\x01\x03\x04\x05\xc6\t\x06\x9c\x90' # 收到回傳碼
>>> shuifen = int.from_bytes(aa[3:5],'big') # 轉換水分
>>> print(shuifen,"%") # 沒除以100
1472 %
>>> wendu = int.from_bytes(aa[5:7],'big') # 轉換溫度
>>> print(wendu,"")
2321 # 沒除以100
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/401468.html
標籤:其他
上一篇:2021。
下一篇:【通信協議】一文搞懂SPI
