工程示例
SDI-12土壤温湿度传感器
通过基站式智能数据采集仪连接SDI-12土壤温湿度传感器,采集传感器数据并解析,通过上位机执行测试脚本显示出具体温度等信息。
传感器参考
连接参考
将SDI-12土壤温湿度传感器红色端连接基站式智能数据采集仪PWR端子、白色端连接GND端子、蓝色端连接SDI12-1或者SDI12-2端子。
![]()
参考连接
脚本参考
1function on_config() 2end 3 4function on_sdi12_1_callback2(status,data) 5 print('on_sdi12_1_callback2') 6 print(timestamp()) 7 print(status) 8 print(#data) 9 if status == 1 then 10 print("response timeout") 11 end 12 if status == 2 then 13 print("receive data error") 14 end 15 if status < 0 then 16 return 17 end 18 if #data == 0 then 19 return 20 end 21 22 ds = "" 23 for k,v in pairs(data) do 24 ds = ds..string.char(v) 25 end 26 27 print(ds) 28 f,l,address,ec,vwc,t = string.find(ds,"(%d+)+(%d+.%d+)+(%d+.%d+)(.%d+.%d+).*") --数据解析 29 vwc1 = tonumber(vwc) 30 print('温度:'..vwc1) --输出采集温度大小 31 add_data_item(8,1,'FLOAT',vwc1) 32end 33 34function on_timeout1() 35 sdi12_1_send({48,68,48,33},3,on_sdi12_1_callback2) --发送0D0! 36end 37 38function on_sdi12_1_callback(status,data) 39 print('on_sdi12_1_callback') 40 delay_call(3,on_timeout1) --延时3s 41end 42 43function on_start() 44 print('---on start-----') 45 print(datetime()) 46 print(timestamp()) 47 add_data_item(0,1,'UCHAR',12) 48 add_data_item(0,2,'UCHAR',23) 49 add_data_item(0,3,'BCD_YYMMDDHHMM',bcdtime()) 50 sdi12_1_send({48,67,33},3,on_sdi12_1_callback) --发送0C!,延时3s 51end
执行log
![../../_images/sdi12_log.png](../../_images/sdi12_log.png)
Pt100三线铂电阻
测量3线铂电阻的真实阻值。
传感器参考
连接参考
Pt100铂电阻引出三线,Pt100接线时电流回路的参考和电压测量回路的参考为一条线(即检测设备的I-端子和V-端子短接)。
备注
蓝色线连接通道对应脚本函数
pt100_3wire_get
第一个参数。红色线之一必须连接于AD2
或AD3
端子,并且pt100_3wire_get
第三个参数必须为AD2
或AD3
![]()
参考连接
脚本参考
1function on_config() 2end 3 4function on_start() 5 print('---on start-----') 6 print(datetime()) 7 print(timestamp()) 8 print('pt100_3wire_get') 9 10 resistance = pt100_3wire_get('AD0','AD5','AD2') 11 print('铂电阻值:'..resistance) 12 13 temp = pt100_temperature('PT100',resistance) 14 print('温度值:'..temp) 15 16 print('---end----') 17end
执行log
![../../_images/pt100_3wire_log.png](../../_images/pt100_3wire_log.png)
备注
四线PT100热电阻传感器,蓝色端子对应 pt100_4wire_get
的第1和第2参数,红色端子对应与第3和第4参数。
并且,第4参数通道必须为 AD2
或 AD3
之一。
Modbus温湿度变送器
通过基站式智能数据采集仪连接485温湿度变送器,采集传感器数据并解析,通过上位机执行测试脚本显示出空气中温度值和湿度值
传感器参考
连接参考
485温湿度变送器红色线接PWR端子、黑色线接GND端子,将基站式智能数据采集仪AY、BZ端子短接后,将485温湿度变送器黄色线接到基站式智能数据采集仪A端子处、白色线接在B端子处。
![]()
参考连接
脚本参考
1function on_config() 2end 3 4function on_modbus_callback(status,data) 5 print('on_modbus_callback') 6 print(timestamp()) 7 print(status) 8 print(#data) 9 10 if status == 1 then 11 print("response timeout") 12 end 13 if status == 2 then 14 print("receive data error") 15 end 16 if status < 0 then 17 return 18 end 19 20 if #data == 0 then 21 return 22 end 23 24 val= "" 25 humidity = (data[3]*256 + data[4])/10 26 temperature = (data[5]*256 + data[6])/10 27 val = string.format("%g,%g",temperature,humidity) 28 add_data_item(1,1,'UCHAR',temperature) 29 add_data_item(2,1,'UCHAR',humidity) 30 31 print(val) 32 print('温度:'..temperature) 33 print('湿度:'..humidity) 34end 35 36function on_start() 37 print('---on start-----') 38 print(datetime()) 39 print(timestamp()) 40 modbus_send({0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B},'4800_8N1',3,on_modbus_callback) 41end
执行log
![../../_images/rs422_log.png](../../_images/rs422_log.png)
PWM雨量传感器
通过基站式智能数据采集仪连接485温湿度变送器,采集传感器数据并解析,通过上位机执行测试脚本显示出空气中温度值和湿度值
传感器参考
连接参考
脚本参考
1function on_config() 2 for i = 0,61 do 3 set_global_number(i,0) 4 end 5 pwm_start("PWM_1",0) --PWM测量 6end 7 8function on_start() 9 print('---on start-----') 10 print(datetime()) 11 print(timestamp()) 12 13 add_data_item(0,1,'UCHAR',12) 14 add_data_item(0,2,'UCHAR',23) 15 add_data_item(0,3,'BCD_YYMMDDHHMM',bcdtime()) 16 17 bcd_time = bcdtime() --每日00:00数据清除 18 if bcd_time[4] ==0 and bcd_time[5] == 0 then --00:00 19 set_global_number(61,0) 20 print("clear today") 21 end 22 23 today_val = get_global_number(61) 24 for i=2,60 do 25 val = get_global_number(i) 26 set_global_number(i-1,val) 27 end 28 29 cnt = pwm_get("PWM_1") --分钟降雨量 30 pwm_set("PWM_1",0) 31 print("minute") 32 print(cnt) 33 set_global_number(60,cnt) 34 35 hour_total = 0 --小时降雨量 36 for i=1,60 do 37 hour_total = hour_total + get_global_number(i) 38 end 39 print("hour") 40 print(hour_total) 41 42 today_val = today_val + cnt --当日降雨量 43 set_global_number(61,today_val) 44 45 print("today") 46 print(today_val) 47 --Actual rainfall upload 48 add_data_item(6,3,'SINT',cnt) 49 add_data_item(6,2,'SINT',hour_total) 50 add_data_item(6,1,'SINT',today_val) 51end
执行log
![../../_images/pwm_get_log.png](../../_images/pwm_get_log.png)
4-20mA光照度变送器
变送器是一款光精度感光变送器,输出数值计量单位为 Lux,设备采用壁挂防水外壳, 壁挂式安装,防护等级高。4-20mA/0-10V/0-5V 多种模拟量输出信号可选,产品供电为 10-30V 宽电压供电
传感器参考
备注
电流测量必须使用 AD2
或 AD3
端子
连接参考
![]()
![]()
参考连接
脚本参考
1function on_config() 2end 3 4function on_start() 5 print('---on start-----') 6 print(datetime()) 7 print(timestamp()) 8 print('current_get') 9 print(current_get('AD2')) 10 print('---end----') 11end
执行log
![../../_images/current_get_log.png](../../_images/current_get_log.png)
电压测量 干电池
输出干电池电压值
传感器参考
无
连接参考
将南孚电池正端与基站式智能采集仪AD5通道号相连,负端接GND端子。
![]()
参考连接
脚本参考
1function on_config() 2end 3 4function on_start() 5 print('---on start-----') 6 print(datetime()) 7 print(timestamp()) 8 print('vol_single_get') 9 print(vol_single_get('AD5')) 10 print('---on start end-----') 11end
执行log
![../../_images/vol_log.png](../../_images/vol_log.png)