fix nh3数据解析

This commit is contained in:
fish 2019-05-09 17:35:18 +08:00
parent d81a03af08
commit 8acc75e11a
2 changed files with 27 additions and 6 deletions

View File

@ -379,6 +379,17 @@ func dealDatav3(data []byte) string{
}
}else if datatype==3{
var R_data P1004_6
R_data.CODE = 1005
R_data.ID = "dc390000"
//尿布台
R_data.VERSION = "yunhorn_kq_c_v1"
R_data.ONLINE = true
R_data.DATA = make(map[string]interface{})
R_data.DATA["data"]=int64(data[6])
data_bufTmp, _ := json.Marshal(R_data)
data_buf := string(data_bufTmp)
go post_to_server(data_buf)
}else if datatype==4{
buffer := new(bytes.Buffer)
@ -419,8 +430,18 @@ func dealDatav3(data []byte) string{
sddata := buffer.String()
log.Println("sddata",sddata)
nh3 := uint32(data[11])*256+uint32(data[12])
log.Println("nh3",nh3)
nh3data := buffer.String()
nh3int1 := strconv.FormatInt(int64(data[11]&0xff), 10)
buffer.WriteString(nh3int1)
buffer.WriteString(".")
sdint2 := strconv.FormatInt(int64(data[12]&0xff), 10)
if wdfh<10{
buffer.WriteString("0")
}
buffer.WriteString(nh3int2)
log.Println("nh3",buffer.String())
log.Println("h2s",data[13])
ch2o := uint32(data[14])*256+uint32(data[15])
log.Println("ch2o",ch2o)
@ -450,7 +471,7 @@ func dealDatav3(data []byte) string{
R_data.DATA["temperature"]=wddata
R_data.DATA["humidity"]=sddata
R_data.DATA["nh3"]=sddata
R_data.DATA["nh3"]=nh3
R_data.DATA["h2s"]=sddata
R_data.DATA["ch2o"]=ch2o
R_data.DATA["co2"]=co2data

View File

@ -153,16 +153,16 @@ func readConn(conn net.Conn, readChan chan<- []byte, stopChan chan<- bool) {
log.Println("pm25data1",data[i+15])
log.Println("pm25data2",data[i+16])
nh3data := uint32(data[i+15])*256+uint32(data[i+16])
// nh3data := uint32(data[i+7])*256+uint32(data[i+8])
pm25data := uint32(data[i+15])*256+uint32(data[i+16])
log.Println("nh3data",nh3data)
log.Println("nh3data",data[i+7])
log.Println("pm25data",pm25data)
//8E 3C 00 00 47 46
var close []byte = []byte{0x8E,0x3C,0x00,0x00,0x43,0x46}
var open []byte = []byte{0x8E,0x3C,0x00,0x00,0x4F,0x46}
var writedata []byte =[]byte{}
if pm25data>100 || nh3data>=3{
if pm25data>100 || data[i+7]>=3{
writedata = open
}else{
writedata = close