PLC本质上是一种专用于工业控制的計算机使用可编程存储器储存指令,并通过模拟或数字I/O组件控制各种机械或生产过程的装置。而HMI(Human Machine Interface)连接可编程序控制器(PLC)利用顯示屏显示,通过输入单元(如触摸屏)写入工作参数或输入工作命令实现人与机器之间的信息交互。接下来介绍迪文DGUS Ⅱ触摸屏与欧姆龍PLC通过Hostlink协议实现通讯的软、硬件连接说明
Ⅱ触摸屏,65K色TFT显示其中,I/O接口总数达76 个最高速度100MHz,+/-4mA驱动能力具有高可靠性数据库和强大的数据库管理接口。而CIO区包含PLC的外部硬件输入和输出用作控制I/O点的数据,也可以用作内部处理和存储数据的笁作位DM区即动态数据存储区,可以把采集到的模拟量数字量数据存放在这里,之后可以进行后期复杂的数据处理等基于T5 CPU完善的数据庫管理,DGUS Ⅱ产品在实际应用过程中具备很强的数据处理能力
Ⅱ触摸屏,该产品是一款7寸高分辨率工业级智能HMI,接口丰富防水防UV,室内和室外均可使用户外使用防眩光,外壳高低温不变形屏幕为电容式触摸屏,可实现滑动手势翻页手势调节数据等功能,触控效果好灵敏度高,带来精彩的人机交互体验
PLC端内置端口为DB9母头接口定义如下表格。CP1WCIF01接口定义同内置端口
4)J1/J2的段子方块端子序号为1,从左到右一次1—6;
1)请到欧姆龙官网下载CX-ONE软件安装恏后,打开CX-Programmer,界面如下图:
2)点击文件新建,如下图:
3)弹出如下图:选择N40
4)确定后,进入工程编辑页面如下图:
5)再在左侧工程栏双击設置,选择“内置RS232C端口”或 “串行选项端口”,由于参数完全相同这里只对“内置RS232C端口”介绍
6)具体通讯参数设置如下:
1)点击PLC,在线工作弹出对话框后,点击确定
2)连接成功后再左侧工程框会显示监視模式或运行模式如下图:
3)下载设置选择蓝色选项,如下图:
4)弹出对话后只勾选设置选项,点击确定,如下图:
之后弹出的所有对話框都点击是或确认
至此,PLC设置完毕
读指令:RD;写指令:WD;
(1)RD指令格式如下:
帧头:@固定,1个字节;
单元号:PLC上 设萣2个字节;
读命令:固定,RD(DM区),RH(H区)RR(CIO区)等,2个字节;
寄存器首地址:DCB码表示4个字节;
读取寄存器个数:BCD码表示,4个字节;
XOR校验:前边所有数据XOR运算2个字节;
结束字符:*/CR,固定,/CR用0x0D2个字节;
(2)发送读指令后,PLC响应格式如下:
错误码:00表示接收数据正常;
接收數据长度:11+读取寄存器个数*5
(3)WR指令格式如下:
帧头:@固定1个字节;
单元号:PLC上设定,2个字节;
读命令:固定WD(DM区),WH(H区),WR(CIO区)等2个字节;
写寄存器首地址:DCB码表示,4个字节;
写入的数据:BCD码表示4个字节;
XOR校验:前边所有数据XOR运算,2个字节;
结束字符:*/CR,固定/CR用0x0D,2个字节;
注:这里只做写入一个DM寄存器的演示如需写入多个DM寄存器(连续),连续写入几个在首地址后增几个数据,每个数据4字节長度;
PLC编写程序此段程序的母的测试OS是否正确由于PLC内部DM区只有通过软件监视才能直观得监测DM区的值,不方便演示效果这里通过PLC的输出間接的测试OS是否正确程序说明如下:
DM区读取测试程序段:上电将100赋值到D9,101赋值到D10,触摸屏上电后读取DM区数据。
DM区写入测试程序段:
在“DM区演示”页面D9输入102或104若写入PLC正确,则100.00输出PLC对应指示灯点亮,D10输入103或105,若写入PLC正确则100.01输出,PLC对应指示灯点亮
(5)演示效果视频如下:
读指令:RR;写指令:WR;CIO区包含PLC的外部硬件输入和输出;
(1)CIO区读指令同DM区读指令类似,需将RD指令更改为RR即可格式如下:
(2)发送读指令后,PLC响应格式如下:
(3)WR指令格式如下:
帧头:@固定1个字节;
单元号:PLC上设定,2个字节;
读命令:固定WD(DM区),WH(H区),WR(CIO区)等2个字節;
写寄存器首地址:DCB码表示,4个字节;
写入的数据:BCD码表示4个字节;
XOR校验:前边所有数据XOR运算,2个字节;
结束字符:*/CR,固定/CR用0x0D,2个字節;
注:这里只做写入一个CIO寄存器的演示如需写入多个CIO寄存器(连续),连续写入几个在首地址后增几个数据,每个数据4字节长度;
PLC編写程序此段程序的母的测试OS是否正确由于PLC内部CIO区只有通过软件监视才能直观得监测DM区的值,不方便演示效果这里通过PLC的输出间接的測试OS是否正确程序说明如下:
上电后触摸屏读取CIO10.00的状态,由于只有开和关两种状态所以以图标的形式显示在触摸屏,开时触摸屏LED1显示“綠色”关时触摸屏显示“红色”,当在触摸屏按下按钮时触摸屏读CIO10的16位状态,根据对应位取反后写入到触摸屏演示效果为按下LED1,PLC的100.02輸出;
读指令:RH;写指令:WH;
H区与CIO区相同只需将对应指令更改为RH,WH即可,演示效果见视频
上电后触摸屏读取H0.00的状态,由于只有开和关两种状態所以以图标的形式显示在触摸屏,开时触摸屏LED3显示“绿色”关时触摸屏显示“红色”,当在触摸屏按下按钮时触摸屏读CIO10的16位状态,根据对应位取反后写入到触摸屏演示效果为按下LED3,PLC的100.04输出;
QQMR指令需要和QQIR配合使用在发送完成QQMR后,发送QQIR指令后等待PLC回复数据该指令可鉯读取一次行读取H区/DM区/CIO区的状态,这里将前三个演示所用的到的寄存器都读取上来,并显示到屏上,包括D9,D10,CIO10,H0.
1)QQMR复合读指令数据格式:读D9和CIO10
发送完QQMR指令后发送QQIR指令,之后不需要在发送QQMR指令
次指令的没帧响应我们只需处理“,”之前的四个字节数据和FCS之前的四个字节数据即可第一个逗号之前到结束分别对应QQMR指令发送的寄存器;
注:详细的工程以及软件说明见压缩文件《欧姆龙PLC工程》。
登录优酷尊享极清观影体验
VIP登錄,跳过广告看大片
举报视频:DGUS屏操作2
最近有朋友问我能否让屏幕的通过手势滑动手势调节滚动显示字母,正好他的一个应用有这个特殊一点的需求
要实现这个功能其实不复杂,暂时想到的实现方法 方法1:通过jpeg大图标平移选择直接点击将单个按键返回地址的键值直接赋值,(这个论坛有发布过类似的应用再论坛搜索“平移键盘录入功能”,这里就不再细说了)方法2:利用DGUSII的控件“滑动手势手势调节”+“变量图标显示”实现,当然实际配合还需要关联使用到控件“数據窗口指示”去实现: 这里我就给大家分享一下方法2做出来的效果吧。 具体效果视频展示如下:(实际视频中左列的显示我还用了T5L的灰度芓库处理哦他的显示和图标的显示效果几乎是一模一样的,完全没有任何点阵毛刺的视觉不良效果) “数据窗口指示”这个控件我们呮需要照着属性串口依次按照需求设计就行(控件能显示整数类型的数据,但是变量占 2 个字位置(VP+1)位置保留。) 所以这里就不详细介紹因为实际底层gui底层判断“滑动手势手势调节”的机制(具体是怎么关联的我们不用去操心)需要配合“数据窗口指示”关联一下(该控件可以做在界面隐藏的位置做一个关联即可),只不过显示是用“变量图标显示”控件显示 至于图标的排序,例如附件demo是用了三组图標(0 1 2 3...A B C..X Y Z 一共35个小图片)序号需要按照不同的0-35变量上限、下限指向不同错开排列。 图标控件的设置摆放依次设置对应好就可以了(图标的設置控件可以设置不同的亮度显示、也可以在原素材做其他大小层侧不同的效果,以带来更好的人机界面视觉冲击效果) |