广东省西门子授权供应商---西门子变频器韶关市总代理

供应商
广东湘恒智能科技有限公司
认证
西门子PLC
西门子伺服电机
西门子触摸屏
西门子电缆
西门子变频器
西门子模块
联系电话
13510737515
手机号
13185520415
联系人
董海波
所在地
惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房(仅限办公)
更新时间
2024-09-23 08:00

详细介绍

之前发过好多次关于modbus方面的帖子,关于200smart标准化的帖子之前就发了两三篇,距离现在zui近的帖子已经超时锁定了。这次发帖是给之前的程序增加了新功能。在一个高度封装的子程序里增加新功能是挺困难的,还好成功的完成了。

        完整的介绍程序的功能:

1、不需要编程,只需在数据块里正确填好各项参数,即可完美工作。

2、通信任务分为轮询任务组,和写优先任务组。轮询任务组内可以放置写操作任务。即写操作在正常轮流工作里。

3、掉站跳过和定时掉站恢复功能。

4、定时写优先组内操作的数据读回功能,即把写操作变成读操作把写入从站的数据读回到plc。

5、轮询任务组里的任意通信任务可以临时退出和随时加入轮询功能里。如果想要人工的将某个轮询内的通信任务退出轮询,将其读写操作的0和1改变为0、1、10、11、以外的任意数值,这条通信任务就退出轮询了。

新增功能

6、以上2~4功能可以通过设置来启用和停用。

    假如应用中会出现同一时刻(同一扫描周期)的多个写操作,那么请把高优先级的写任务写在小序号(其实没序号)的写操作任务里。因为写操作的检查是从小序号开始的,其实是按顺序检查,先检查到的先执行。

    数据块里的指针赋值是一dama烦,要么是很大的双整数,要么是十六进制数,很不方便。这次这里的改进就是输入简单的双整数,比始填4700是希望指向vb4700的指针,封装的子程序在第一个扫描周期会将4700这些双整数变成指针。当然,此数据块中输入十六进制数和很大的双整数值的指针数值也可以,是兼容的。

    切记设置好库内存,背影数据等的地址,不要出现干涉。干涉或数据块填写的不正确,程序就工作不起来了。

一、char 和 string 的定义:

1、数据类型为 char (character) 的变量长度为 8 bit 位,占用1个 byte 的内存。char数据类型将单个字符存储为 ascii 编码形式。
通常是指计算机中使用的字母、数字和符号,包括:1、2、3、a、b、c、常见符号等。每个字符占用空间为1字节。
2、数据类型为 string 的操作数可存储多个字符,zui多可包括 254个字符。字符串中的第一个字节为总长度,第二个字节为有效字符数量。
字符串(string)在存储上类似字符的数组,所以它每一个元素都是可以提取的字符,如:"abcdefg"叫字符串,而其中的每个元素叫字符。

二、char 和 string 在西门子 plc 中的格式

例如,在 plc 中创建一个 db 块,并将属性设置为标准 db 块,在 db1块中创建如下的字符串和字符,并赋予起始值。如下图所示:

图.01

1、string 数据类型的格式
下载到 plc 中,通过监视表逐个查看每个字节中的值。如下图所示:图.02

可以看出:
a.数据类型为 string 的字符串,通过查看 db块偏移地址可见该字符串占用256字节;查看字符串第一个字节,其zui多存储字符总数量为254个。
b.数据类型为 string[10] 的字符串,通过查看 db块偏移地址可见该字符串占用12字节;查看字符串第一个字节,其zui多存储字符数量为10个。
c.字符串的第一个字节为该字符串总长度,第二个字节为当前存储的有效字符数量。

2、char 和16进制数的关系
在计算机领域,所有的数据都是以2进制数存储的,那么 char,16进制数和2进制数又有什么关系?
如下图所示:图.03

可以看出:
a.通过字符 'a' 的16进制数和2进制数,可见字符(char)、16进制数只是在 plc中显示的形式不同,实际存储的是一个2进制值。
b.通过字符 '1' 和数值1(mb0的值)的16进制数和2进制数,可见字符 '1'和数值1是两种不同数据。因此,实际使用是必须注意区别。
c.下图是 ascii 字符(char):'0','1',……'e','f'对应的2进制,10进制,16进制对应关系的截图。

图.04

更多的 ascii 字符对应关系,请查看下面的链接。
ascii 码表链接:ascii

三、使用 string 数据类型在 hmi 上显示汉字

例如,在某些不支持 wstring 数据类型(关于 wstring 参见:跳转链接)的hmi 设备上显示汉字,也是可以使用 string 数据类型显示的。
但由于 string 数据类型中存储的汉字编码标准为 gbk 编码;因此,需要在 hmi 设备上选择相应的编码标准。
如下图所示,在 string 数据类型的起始值中定义汉字 '你好',且字符背景底色为浅黄色(编译时会有警告信息,这是tia软件建议string 数据类型中不使用汉字的友情提示),但不影响使用。


华南西门子总代理,华中西门子总代理,华东西门子总代理,华北西门子总代理,西北西门子总代理

展开全文

我们其他产品
我们的新闻
微信咨询 在线询价 拨打电话