python 串口读取地磅仪表 您所在的位置:网站首页 地磅地基怎么做 python 串口读取地磅仪表

python 串口读取地磅仪表

2023-03-29 08:10| 来源: 网络整理| 查看: 265

论坛里经常碰到称或是地磅对接的问题,想当年我也是一路问过来啊,自动一人在客户那磨练下就知道怎么做的了,今天总结下吧。我接触的称或是地磅都是串口输出数据,貌似都是串口输出(可能有别的我没接触到的)。

1、利用串口调试助手接收数据

首先我们来了解称是怎么把数据传输出来的,一般情况称传出模式有2中,

模式一是连续发送,换句话说就是一直向外发数据,接收到数据后按照协议规则剥离出你要的数据就可以。

模式二种是应答式,就是按照协议格式发送一组字符串或是16进制字符串,称提给你回应,按照规则你剥离出你要的数据就可以了。

知道称数据发送方式了,那下步我们要知道怎么去接受传输过来的数据,

我用一个比喻来形容下:引水灌溉,水库的水引到庄稼地浇灌

水库的水外放,肯定有规则的,浇灌多少地,水流量多大,传输多远,对于水库的管理者都有规定,这好比称厂家的协议。

对于庄稼户,要用水,肯定要修渠道,渠道是多宽合适,这个根据水库管理者的建议,这个好比对照称称厂家的协议。

例子只是一个例子不算很得当,希望阅读者能够理解。

哪些是要设置的协议呢:串口号,波特率,校验位,数据位,停止位。

串口号:本机要接收数据的串口号;波特率,校验位,数据库,停止位,这些都是有厂家来给你提供的,只要按照他们给的标准设置就可以了,如下图

当然还有重要的一点一定要把称和电脑连接上,一般选择屏蔽线作为传输介质。如果没有问题就可以接收到数据了(连续发送模式)。

2、程序接收数据

想必通过上面的说明你应该了解怎么接收数据了,自己写程序接收数据,道理一样的,

1、程序加载后把对应的串口,波特率,校验位,停止位设置正确

mycom1.PortNum=iPort;

mycom1.BaudRate=iRate;

mycom1.ByteSize=bSize;

mycom1.Parity=bParity;

mycom1.StopBits=bStopBits;

mycom1.ReadTimeout=iTimeout;

if(this.OpenCom())

msg.AppendText("串口初始化成功……");

else

msg.AppendText("串口初始化失败!");

2、打开串口,接收发过来的数据

//开串口

public bool OpenCom()

{

try

{

if (mycom1.Opened)

{

mycom1.Close();

mycom1.Open(); //打开串口

}

else

{

mycom1.Open();//打开串口

}

return true;

}

catch(Exception e)

{

MessageBox.Show("错误:" + e.Message);

return false;

}

}

接收数据

public string dis_package(byte[] reb)

{

string temp="";

foreach(byte b in reb)

temp+=b.ToString("X2")+" ";

return temp;

}

数据怎么处理看你的需求了

如果你还不知道怎么做,去下个demo细细的研究下吧。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有