欢迎来到奥特威ATW称重软件官方网站! 收藏本站| 公司简介| 公司环境
全国统一热线
134 0202 6688
当前位置:主页 > 新闻中心 > 行业动态 > Pcomm在数字地磅称重软件中的应用

Pcomm在数字地磅称重软件中的应用

文章出处: 人气:发表时间:2018-04-09 19:25
本文着重介绍在数字地磅称重软件中,用Pcomm实现数字传感器与计算 机的高速数据通讯。http://www.weighiot.com/uploads/allimg/180103/1-1P103152255925.jpg
在数字地磅称重系统中,一般是采用85-232转换器直接连接数字传感器。用电脑代替仪表进行称重并完成数据管理。
实际应用中发现,在Windows环境下进行数据高速传输时,使用一些现成的控件存在严重的 数据丢失现象。而使用M0XA PcommPro提供的专 为异步通讯设计的API函数库,就可以解决上述 问题。本文介绍在C++builder中调用Pcomm.dll实 现上位机与数字传感器通讯的过程。
从MOXA公司网站下载安装包,安装后得到 Pcommdll,用 C++builer 中的 Implib.exe 导出对应的 静态库,取名为Pcomm.lib,添加到工程中,同时在 安装目录下找到Pcommh文件,添加到工程中。
在串口通讯过程中,主要使用的函式如下: int sio_open(int port) // 打开串口,port 是串口号 int sio_ioctl(int port,B9600,P_N0NE|BIT_81 STOP _1); //设置串口波特率,如9600,n,8,1
int sio_cnt_irq(int port,char *p,1); // 设置中断 函数,port是串口号,p是回调服务函数指针
int sio_write(int port,char *p,int len); //发送数 据,*p发送内容,len是长度
int sio flush(int port,2); // 清空串口 缓冲区,第二个参数清空缓冲区类型,2是同时清空输入和输 出缓冲区
int sio_iqueue(int port); // 获得接收字节数 int sio_read(int port,char *p,int len); // 读取串
口数据,*p接收内容
int sio_close(int port); // 关闭串口
主要程序代码如下:
 void tdcall cntirq(int port)// 声明中断服务函数 void_fastcall TForm1 ::OPENClick (TObject *Sender); //打开串口,设置中断服务函数
port=StrToInt(ComboBox1 - >Text); // 将要打开的
串口号
sio_open(port)// 打开串口 sio_ioctl(port,B9600,P_NONE|BIT_8|STOP_1)// 设
置此端口的通讯参数,包括波特率,数据位,校 验位,停止位
void tdcall(*p)(int);// 回调函指针 p=cntirq;
int izsiontjrq^ort^pj); // 设置中断函数 }
//中断服务函数,读者手工编写,用来处理 接收到的数据,类似于MSCOMM中的接收事件 void __stdcall cntirq(int port)
{
Sleep(20);//为了保证在和传感器通讯时,能进 行其他操作,需要加入此函数
unsigned char RecProBuf [1024]={‘\0,}; int n=sio_iqueue(port); //获取接收的字节数 if(n>0)//有数据接收,无数据跳出 {
sio_read(port,RecProBuf,1024); // 读取数据
//读到数据后,按协议解析,并显示 }
sio_write(port,SendData,7); // 发送数据 //SendData为读传感器内码命令,7是发送长度, 不同厂家协议不同
sio_flush(port,2); // 刷新串口 }
void _fastcall TForml:: SendClick (TObject *Sender)//首次点击开始发送命令,触发中断服务 函数,以后在中断服务函数中发送命令
{
char * SendData; //读传感器内码命令 sio_write(port, SendData,7); // 发送数据 sio_flush(port,2);
}
void _fastcall TForm1::CloseClick (TObject *Sender)
{
sio_cnt_irq(port,NULL,0);// 关中断 sio_close(port);// 关串口
http://www.weighiot.com/uploads/allimg/180103/1-1P103152335102.jpg
Pcomm是建立在Win32通讯API函数的基础
上的,并对其进行了封装,提供了高级的调用接 口。在数字地磅称重软件的编写中,数据高速 可靠的传输非常重要。使用Pcomm通讯时,可以 看到RS485-232转换器的RXD和TXD状态灯, 处于常亮状态。
经过连续长时间运行测试,工作正常,未发现 数据丢失现象。在计算机上同时进行其他操作时, 也未对称重系统产生明显妨碍。
http://www.weighiot.com/uploads/allimg/180103/1-1P10315240JR.jpg
用于测试的计算机配置如下:
1、CPU:C530 1.7G 内存:1G 硬盘:80G 操作 系统:xp蕃茄花园ghost版;
2、CPU:Intel Core 2.2G 双核内存:1G 硬盘: 160G操作系统:xp蕃茄花园ghost版。
这是笔者近期开发的《数字摄像地磅称重软件》如图2,应用了文中相关的技术。
此文关键字:地磅称重软件,地磅软件
首页 | 公司简介 | 新闻中心 | 产品技术 | 行业应用 | 企业风采 | 走进我们 | 联系我们