作者 | 主题 |
---|---|
小尹先生 游侠 经验值: 380 发帖数: 20 精华帖: 1 |
楼主 2019-08-04 15:52:06
主题:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 先自我介绍一下,和大多数工控人一样,我应该也算是毕业就做了专业对口的工作,不是因为别的,就是因为当时的想法是我除了自己的这个专业,好像其他的工作我也找不到啊!哈哈,当然后来发现事实并不是这样。 和大多数人一样,我在学校那会学的就是三菱FX系列的PLC,后来工作以后,因为进的一些私人企业,大部分用的也是三菱、欧姆龙这样的小型PLC,除非客户指定会用一部分西门子S7系列的PLC。 用过三菱PLC的都知道,我们动不动就会用到里面的M点,我们在学校学的时候,那个时候,老师告诉我们这个M啊,就像是中间继电器,主要起过度作用。但是我们后来工作上会发现这个M其实并不只有过度作用,因为有的时候我们会用到一些功能指令,如MOV这样的,这个时候就不简简单单是起到中间继电器作用了。 也许用惯了FX系列的M点,在第一次接触S7-1200的时候,我还是习惯性的把所有的指令,逻辑控制用M点进行编写,当然,1200也是支持M点的。不过那时候1200用的也少,所以也没发现什么大的问题。后来接触的1200项目多了,包括开始渐渐接触1500的项目,就会发现M点越用越多。 这个M点的大批量使用在小的一些单机设备上还不会用什么问题,到了大的项目,联机项目上就开始暴露其短板了。有的时候,我们要开始整理M点哪些被用过,哪些没用到,哪些是用来做手动的,哪些是用来设置参数的,等等。当然,有些大师基本上只要写过的程序是能记得自己用了哪些的,反正我是不行。 后来我在看别人写的1200程序,发现了他们并不是很频繁的用M电,而是大多数的用DB数据块。后来有时间,就研究了一下。然后我就发现了新大陆一般。以前我一直认为DB块是一个很复杂,很难应用的东西。为什么会有这样的想法,是因为我看到的一些通讯程序都是用DB块来编写的。 可事实上,如果用西门子的PLC,我们应该学会使用DB块。因为它不止可以编写通讯程序,还可以帮我们对程序进行清楚的整理。 下面举个例子,比如我们用M点来定义一些手动开关,如我们用DB块,就可以先定义一个手动的DB块,如图所示,
双击进入,可以编辑BOOL型变量,这里变量名可以为中文,也可以为英文。
也可以批量定义数组,这里的ARRAY表示数组。
同理,当我们需要其他的一些M点的时候,我们可以新建新的DB块。 我们在程序使用这些地址时,可以右键点击“手动部分”→属性→“取消优化的块访问”,如图所示
在程序中的变量为 当然,DB块的用处很多,这里只是我再实际应用中发现比较方便的地方,和大家分享一下。如有雷同,不甚荣幸。 |
周杰伦 至圣 经验值: 13747 发帖数: 2032 精华帖: 16 |
1楼 2019-08-04 17:00:25
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 M就像是系统预先建立的一个DB 所以尽量用DB块,不要用M。DB划分比较清楚。
工控毁我青春!
|
yming 至圣 经验值: 127285 发帖数: 21992 精华帖: 824 |
2楼 2019-08-04 18:03:34
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 嘿嘿,楼主还没跳出原来编程的概念。 1200/1500已经不再使用具体的存储地址了。推荐使用优化的数据块。使用变量名寻址,编程与具体地址无关! 这就像硬盘存储文件,任何时候我们也不会去关心具体硬盘存储地址。 在TIA中,M区不一样,它是通过变量表定义的;实际编程,也是使用变量表!的变量名称!不用关心具体M地址。可以在某时刻,通过变量表,重新组织M地址分配,不会影响已经编写好的程序,也不会影响对这个变量名称的注释。
学而时习之,不亦说乎?温故而知新,不亦乐乎?
|
JOSENWU 游侠 经验值: 451 发帖数: 63 精华帖: 0 |
3楼 2019-08-04 19:29:33
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 西门子的M只是一种数量较少的,有状态存储功能的系统全局存储区。它的功能是固定的。也因为西门子还有专用数据区,所以数量较少。而三菱的M除了西门子的这些功能外,还因为三菱的PLC硬件结构思路不一样,或者叫落后,导致M区特别大。在西门子里,你要把"位"组合成"字"很容易。而在三菱里就费劲费大了,你必须以 K4M1 这样的形式把位组合成字,而且只有这一种选项。而西门子里可以是 IW,QW,DBW,MW这样的任意组合就可以把16个位变成字。所以三菱在这方面是落后的。因为离计算机数据组合太远了。
学无止尽
|
holdkcsxyz 至圣 经验值: 13013 发帖数: 1814 精华帖: 22 |
4楼 2019-08-04 19:35:48
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 设计者设计的M/T区还是有实用价值的就看我们怎么用,OB1里面连接不同FB块的全局变量就可以用到时间效率很好的M区(这样其实也节省了空间,不过这两个效率在如今的TIA架构下基本可忽略),PLC编程也不是越封装越好,实际上PLC的软件应用介于嵌入式和IPC之间,硬件的工业现场稳定性稍好于这两者。注定可能不能太关注对时序锱铢必较的底层;也不能太关注对封装斤斤计较的上层(时序太短/封装太多可能会带来不稳定性,这是工业应用上最忌讳的,实践上可以类比LV的子VI设计既有适当封装又有底层时序显示的分析波表来优化时序) |
qiqicy 游士 经验值: 191 发帖数: 13 精华帖: 0 |
5楼 2019-08-04 20:12:52
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 欧洲体系的和日本(来源是美国)还是不一样的。对于大系统来说,M点确实不怎么用,从200到1200,就是从美系重回西门子本身编程理念吧。等你看了PCS7系列的,对这个可能又有更深的看法了吧。 |
天芯 至圣 经验值: 18857 发帖数: 2106 精华帖: 0 |
6楼 2019-08-07 10:12:27
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 |
黑猫警长W 至圣 经验值: 18392 发帖数: 2409 精华帖: 1 |
7楼 2019-08-07 10:41:40
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 本人尽量少用M |
WOWUWUWU 至圣 经验值: 10573 发帖数: 1794 精华帖: 0 |
8楼 2019-08-07 14:31:16
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 |
博望侯1988 侠士 经验值: 1362 发帖数: 19 精华帖: 0 |
9楼 2019-08-08 08:29:01
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 优化块访问其实很好,不怎么注重绝对地址了,和高级语言很相似~~ |
quiet 奇侠 经验值: 7587 发帖数: 1989 精华帖: 0 |
10楼 2019-08-08 10:54:47
主题:回复:关于西门子S7-1200与三菱FX系列的M辅助继电器的见解 M这个预定义变量的一个好处是输入方便。 |