当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘要:蔬菜质量可追溯系统是一种采用C/S和B/S混合模式的农产品质量追溯系统。该系统采用物联网技术对蔬菜种植 及加工过程中的所有生产数据、检疫数据、加工数据、销售数据进行记录,最终为生产过程控制、生产管理、食品溯源服务。 因此,可在对企业进行实地调研的基础上,应用此方法开发一套蔬菜质量安全可追溯系统。文章主要研究了其中的电子秤数 据通信与同步发送模块的实现方法。

引言

蔬菜是我们日常生活中必不可少的食物之一,蔬菜质量是 否安全直接影响我们的健康。本文在调研蔬菜企业实际业务 流程的基础上,对蔬菜种植及加工过程中记录所有生产数据、 检疫数据、加工数据、销售数据等数据进行实时跟踪记录。

溯源系统的“销售数据模块”中的蔬菜称重由串口电子秤 来完成,我们的需求是需要串口电子秤联入网络,蔬菜称重时, 电子秤通过串口返回数据给电脑,并将数据通过Socket发送 给网络上的服务器并记录下来。

实际上常用的电子秤与电脑交互采用两种方式。一种是 连续传送方式,电脑不用发送数据给电子秤,电子秤每隔一 段时间将“重量”发给电脑。还有一种是指令传输方式,在这 种情况下,电子秤只在输入指令的情况下,才会向电脑发送数 据。不过这种方式有个最大的缺点,在输入的指令错误的情 况下,不会返回任何信息。我们测试它的连续方式。下面先进行电子秤的设置。

1电子秤设置

先通过调试说明设定波特率,程序中和机器中必须设置 一样的波特率才能正确地收发数据。其次设置“通信协议”。 按照电子秤的说明进行配置,下面我们就进行配置。

1.1系统设置

开机进入称重状态,同时按数字键“1”和“总计”键, 进入设定状态。

屏幕显示“CLOSE”,按“去皮”键选择,“CLOSE”为 关闭串口,“SER”为打开串口。按“累清/设定”键确认,进 入下一步。

屏幕显示“B ****”,按“去皮”键选择“波特率”,按“累 清/设定”键确认,进入下一步。

屏幕显示“P **”,按“去皮”键选择“通讯协议”,按“累 清/设定”键确认并进入下一步。

1.2电子秤协议选择列表

本系统中的电子秤协议如表1所列。

表1电子秤协议

编号
名称
发送方式
说明
1
协议A
连续发送
含地址、单价、金额
2
协议B
连续发送
仅重量
3
协议C
连续发送
仅重量
4
协议D
连续发送
仅重量
5
协议D
稳定发送
仅重量
6
协议E
连续发送
仅重量
7
协议E
稳定发送
仅重量
8
协议F
连续发送
含单价、金额
9
协议F
稳定发送
含单价、金额

1.3电子秤通讯协议数据格式

8位数据位,1位停止位,无校验位。我们选择系统默认 的协议D进行设计。字节1 (ASCII):=起始位,字节2〜8 (ASCII):按先低后高的顺序发送6位重量数据,最后发送符 号位,其中表示负数,空格表示正数,不满8个数据则 用空格填满。

2电脑串口设置

用鼠标右键单击“我的电脑”,在弹出的菜单中选择“属 性”,然后选择“硬件”,“备管理器”,在弹出的窗口数型目录 中选择“通信端口(COM1)”,弹出的窗口如图1所示。对“端 口参数”进行设置,一定要和自己所选取的电子秤匹配。波特 率9 600、8位数据位、1位停止位、无校验位,图1所示是 系统通信端口 (COM1)的属性设置界面。

溯源系统电子秤编程调试

3程序设计

C/S 程序开发使用 Visual Studio 2010, Visual Studio 2010可简化在各种平台上创建、调试和开发应用程序的过程, 是供开发人员执行基本开发任务的重要工具。它自带对测试驱 动开发的集成支持及调试工具,以帮助确保提供高质量的解 决方案。

3.1界面设计

本系统使用Visual Studio 2010中的SerialPort控件访问

串口。把电子秤配置好后,然后开始编程序。在项目中,电子 秤收发数据的子界面如图2所示,其主要任务就是把电子秤 称重时的重量信息实时地传递给窗体,在重量文本框中显示 出来。至于Socket在另外的模块来实现,这里不讨论。

图2电子秤称重模块

3.2串口配置程序

本系统选择串口通信口为COM1,设置串口通信波特率 为9 600和电子秤,设置串口通信数据位,设置串口通信停止 位1位,设置串口通信无校验。其重点程序如下:

Serialport_C.PortName = "COM1":

Serialport_C.BaudRate = 9600 ;

Serialport_C .DataBits = 8 ;

Serialport_C.StopBits = System.IO.Ports.StopBits.One ;

Serialport_C.Parity = System.IO.Ports.Parity.None ;

使用Visual Studio中的Serialport控件初始化,可设置 缓存并判断串口是否打开状态,如果没有打开则打开串口。程 序如下:

Serialport_C.ReadBufferSize = 1024 ;

if (Serialport_C.IsOpen)

{

MessageBox.Show(“ 串 口 已打开! ”,“提示”, MessageBoxButtons.OK,

MessageBoxIcon.Information);

}

else

{

Serialport_C.Open();

}

3.3数据的读取与显示

接收缓冲读取全数据,设置OnComm事件的字节长度, 清空缓冲区,定时器启动。程序如下:

Serialport_C.ReadExisting();

Serialport_C.ReceivedBytesThreshold = 1;

Serialport_C.DiscardInBuffer();

timer1.Start();

串口数据的检测读取:就是从Serialport控件的缓存中读 取数据位,如果有数据,则读取数据并存入一个数据组中。

int bytes = Serialport_C.BytesToRead ;

byte[] buffer = new byte[bytes] ;

if (bytes == 0)

{

return ;

}

Serialport_C.Read(buffer,

0,

bytes) ;

把取出数组中的数据转换为字符型数据并连接在一起准

备输出 :

string srt = string.Empty ;

string str = string.Empty ;

for (int Index = 0 ;

Index < buffer.Length ;

Index++)

{

str += ((Char)(buffer[Index])).ToString() ;

}

在程序界面上实现字符串的翻转显示 :

String output = string.Empty ;

for ( int i = str.Length ;

i > 1 ;

i-- )

{

output += str.Substring(i - 1,

1) ;

}

textBox1.Text = output ;

}

把取出数组中的数据转换为字符型数据并连接在一起准

4结语

至此,就可以完成“电子秤称重数据”的动态读取了。在 测试过程中也不是一帆风顺的,首先电子秤和电脑串口的连接 要保证物理通路,在这个基础上才能进行下一步的工作;其 次要正确配置好电子秤,波特率要一定要保证一致;还要选 择适当的传输协议,如果这个不正确,后面的程序就不用写了; 最后还要写出对应的读取程序。要正确对返回的ASCII码进行解码,这样才能得到正确的结果,当然,这里只是针对电 子秤的调试和数据处理过程,网络中的Socket发送在另外模 块实现。

20211117_6193d627af724__溯源系统电子秤编程调试

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭