欢迎来到 广州坤茂机电设备有限公司
全国咨询热线: 13925047020
联系我们

地址:广东省广州市天河区沙太南路85号2楼16-28房

电话:13925047020

传真:020-37268158

邮箱:378189875@qq.com

新闻中心
自动化控制柜|PLC串行通信在散布式操控体系中的运用(3) 很多撰文都进行论述过
  来源:广州坤茂机电设备有限公司  更新时间:2024-02-24 11:15:12
自动化控制柜|PLC串行通信在散布式操控体系中的运用(3) 很多撰文都进行论述过
PLC串行通信在散布式操控体系中的串操控运用
  使用activex控件开发串行通信程式较为容易,很多撰文都进行论述过,行通信散但是布式这种方法即时性较差。使用windows api函数开发串行通信程式虽然对比繁琐,体系自动化控制柜但是运用选用多线程技能,其准确性高,串操控即时性好,行通信散适用于延续生产进程中通信要旨严肃,布式即时性强,体系数值量大的运用场合。在本次体系开发中,串操控空调PLC编程经过概括斟酌,行通信散我们选取了使用windows api函数开发串行通信程式。布式

  在开发进程中,体系我们使用了多线程,运用事务驱使的空调PLC开发形式。通信程式主要由两个线程组成,主线程负责收纳顾客输入,相应键盘鼠标,收纳windows音讯,以及向串口传递数值。另一个监视线程监视串口收纳音讯,并向主线程传递windows音讯。通信进程如图3所示。



  使用进程中,首先使用一类型api函数原始化通信端口。这部分程式如下:

  char *comno;

  dcb dcb;

  string sendtemp;

  file://取得要开启的通信端口

  sendtemp=“com” + inttostr(radiogroup1-》itemindex +1);

  comno=sendtemp.c_str(); file://字符串变换

  hcomm=createfile(comno,generic_read|generic_write,0,null,open_existing,0,0);

  file://使用createfile函数开启一个通信端口,开启的

  file://端口视窗体上选取的而定。

  if (hcomm==invalid_handle_value)

  file://如果串口未开启,警报音讯。

  {

  messagebox(0,“开启通信端口不对!!”,“comm error”,mb_ok);

  return;

  }

  getcommstate(hcomm,&dcb); file://取目前串口状况

  file://设定通信端口的状况

  dcb.baudrate =cbr_9600; file://波特率设为9600

  dcb.bytesize =7; file://数值位7位

  dcb.parity =evenparity;//奇偶校检设为偶校检

  dcb.stopbits =twostopbits;//完成位设为2位 if

  (!setcommstate(hcomm,&dcb))

  {

  messagebox(0,“通信端口设定不对!!

  ”,“set error”,mb_ok);

  return;

  }

城市分站
联系我们

地址:广东省广州市天河区沙太南路85号2楼16-28房

电话:13925047020

传真:020-37268158

邮箱:378189875@qq.com

0.0709

Copyright © 2024 Powered by 广州坤茂机电设备有限公司   粤ICP备2023031481号-1 sitemap

粤公网安备 44010602011453号