登录
首页 PLC论坛 PLC论坛
回帖 发帖
正文

主题:你怕语句表吗?学习语句表的几点建议

点击:3473 回复:15

   我接触到很多同行,他们都说S7-300/400的语句表(即指令表)语言难学,最近在西门子的S7-300/400论坛上,看到有网友感叹“语句表好难学啊!”(见
http://www.ad.siemens.com.cn/club/bbs/post.asp?b_id=4&a_id=786485&s_id=0&num=19#anch)。
   梯形图为什么好学?其原因很简单,梯形图来源于继电器电路图,以触点和线圈为主,因此熟悉继电器控制的电气人员感觉很容易学。
   1.语句表非学不可
   1)语句表的指令比梯形图多,只有语句表才有下列指令:定时器/计数器的FR指令、与地址寄存器、累加器、状态字、数据块有关的大量指令,循环指令(LOOP)和部分跳转指令,块结束指令等。
   2)语句表的功能比梯形图更强,例如循环程序和间接寻址等只能用语句表来编程。
   3)实际的控制程序(特别是老外编的程序)几乎都有语句表编写的逻辑块。但是语句表程序一般不能用STEP 7完全转换为梯形图。不能转换的程序段仍然用语句表表示。
   因此在实际工作中语句表是很难回避的,要想学好S7-300/400,必须学好语句表。
   2.语句表为什么难学?
   1)语句表语言有点类似于Intel的51系列单片机的汇编语言,比如它们都有累加器、状态字和地址寄存器等,梯形图并不使用累加器和地址寄存器。
   2)语句表程序几乎所有的操作都是在累加器中完成的,因此需要用大量的装入(L)指令来将数据装入累加器,用传送(T)指令来将运算结果从累加器传送到目的地址。比较一下S7-300和S7-200的循环程序,就会发现前者的要复杂得多。
   梯形图只需要一条MOVE指令,不需要累加器就可以任意传送数据。
   2)S7-300/400的间接寻址比其他PLC的间接寻址复杂得多,只有语句表有间接寻址功能,这也是语句表难学的原因之一。
   3.学好语句表的几点建议
   1)首先要打牢基础,掌握必备的计算机基础知识,例如二进制数、十六进制数、BCD码、补码、各种数据类型、参数类型、累加器、状态字、地址寄存器、各种寻址方式等的基本概念和应用。
   如果在学校学过汇编语言,对学习语句表语言会有好处。有人建议为了学语句表去学汇编语言,我认为倒没有这个必要。
   2)多用多练,在实践中学。PLC和计算机的语言就像外语一样,一定要多用多练,主要靠读程序、编程序和调试程序来学习。初学的时候可以找一本好的教材,阅读教材中有大量注释的语句表程序。在此基础上,可以阅读生产中的实用程序。最好能自己编一些程序,然后用仿真软件来调试程序。
   3)充分利用STEP 7的在线帮助功能,用鼠标选中用户程序中的某条指令,按〈F1〉键就可以打开该指令的在线帮助,看到指令的详细使用方法,例如指令的功能描述,指令的输入/输出参数的数据类型、允许使用的存储区和参数的意义,指令的执行对状态字的影响,以及指令应用的实例等。
11-02-12 08:29
学习了
11-02-12 09:43
语句表真不好学,想学,但是实际工作中用的不多,就没那个耐心学!我是做设备维护的,设备也是进口的,在程序上没多大问题,就没那个功夫去学习!
11-02-12 15:27
该用户被锁定!
11-02-12 17:53
得学啊,不学是不行的
还要多顶帖子
11-02-22 07:37
受教了
11-02-23 08:08
学会就好,应用少。关键是怎么用
11-02-23 10:49
学习汇编吧,该学的时候,我他妈睡觉去了,现在只有自己从头再来……
11-02-24 21:00
过去由于有个项目需要指针的使用,不得不花了几天时间才看懂指令,感觉调试确实不方便,不过功能很强大,因为语句表用的少,半年后又忘了差不多
11-02-24 22:34
恩,这个我膜拜了。谢谢。
11-02-25 20:50

上一页下一页

工控新闻

更多新闻资讯