中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册 登录 广告服务 | 客服中心
您现在所在的是:

施耐德论坛

抖音 西门子减速电机 德嘉 台达 英威腾 泓格论坛 西门子 我和LOGO!有个约会 FLIR红外热像论坛 【有奖活动】英威腾 “Ni美国国家仪器 “PLC发展趋势大讨论”活动圆满结束 cc-link图文征集活动 西门子SMART LINE V3
工控论坛首页 施耐德PLC → 浏览主题: 编程时用ST语言好?还是直接C语言好?
发表新帖 回复该主题
回帖:29个,阅读:831 [上一页] [1] [2] [3] [下一页]
* 帖子主题:

编程时用ST语言好?还是直接C语言好?

分享到
249
AUTOSYS168
文章数:148
年度积分:249
历史总积分:249
品牌积分(施耐德):145
注册时间:2019/10/29
发站内信
发表于:2019/11/4 13:50:44
#0楼
 大部分主流品牌商编程时采用ST语言,如施耐德PLC等。ST是结构化文本编程,类似于C语言,不同于梯形图和顺序函数功能表。它的优点就是能简化复杂的数学方程,进行梯形图所难以执行的复杂计算,完成程式的建立;
 少部分品牌商编程时采用C语言,可以通过C语言子函数调用的方式,加入到梯形图的体系中,主要起到辅助作用,它主要解决复杂的数字方程,解决梯形图无法达到的运算速度和效率,解决梯形图编程过于复杂的问题,用C语言编程可提高程序效率,如CRC校验,复杂浮点数运算,多项式函数运算,凸轮参数设置等。
 在使用中不知大家在PLC编程中觉得那种编程方式比较好呢?
249
AUTOSYS168
文章数:148
年度积分:249
历史总积分:249
品牌积分(施耐德):145
注册时间:2019/10/29
发站内信
发表于:2019/11/4 14:01:25
#1楼
参考案例如下:
 案例1:C语言编写的程序:
 梯形图块TTP:
 
附件 图片1.jpg
 C语言自定义函数TTP:
 
附件 图片2.jpg

 案例2:ST语言编写的程序:
 梯形图块Cam_copy:
 
附件 2.jpg
 ST语言自定义函数Cam_copy:
 
附件 3.jpg
[此贴子已经被作者于2019/11/4 14:04:19编辑过]
6768
fujifa
文章数:2505
年度积分:453
历史总积分:6768
品牌积分(施耐德):89
注册时间:2014/2/10
发站内信
2017论坛贡献奖
2016论坛贡献奖
2015论坛贡献奖
发表于:2019/11/4 14:37:57
#2楼
首先,ST语言是类似于PASCAL而不是类似于C。

其次,用ST还是C语言没有可比性,毕竟你提到的施耐德并不支持C语言。

最后,使用C语言出道的贝加莱已经全面支持ST语言,没听说过支持ST的转C语言。

顺便说一下,目前的施耐德ST语言支持了一些标准以外的特性,例如接口,继承。这是你信捷C语言不支持的。
精通富士POD,富士PLC的编程
有问题可以直接电邮:FUJIFA@yeah.net
423
lingms
文章数:33
年度积分:123
历史总积分:423
品牌积分(施耐德):11
注册时间:2013/10/5
发站内信
发表于:2019/11/4 16:10:59
#3楼
关注,所以哪个更好呢?迷茫……
1073
zhujilucj 版主
文章数:303
年度积分:987
历史总积分:1073
品牌积分(施耐德):6
注册时间:2018/12/20
发站内信
发表于:2019/11/4 17:12:59
#4楼
能解决问题的才是好方法,不同编程语言有不同的优缺点。高端品牌对于plc的运算能力下的本钱的确不少
白玉堂前春解舞,东风卷得均匀。蜂围蝶阵乱纷纷。几曾随逝水?岂必委芳尘?
万缕千丝终不改,任他随聚随分。韶华休笑本无根。好风凭借力,送我上青云。
249
AUTOSYS168
文章数:148
年度积分:249
历史总积分:249
品牌积分(施耐德):145
注册时间:2019/10/29
发站内信
发表于:2019/11/4 21:13:48
#5楼
回复 #2楼 fujifa
补充的很到位,赞表情
1756
0aguang0
文章数:480
年度积分:1287
历史总积分:1756
品牌积分(施耐德):677
注册时间:2010/10/21
发站内信
发表于:2019/11/4 22:08:38
#6楼
不会C   ST会一点点..用来计算太舒服了
水平一般,能力有限.如有错误之处.欢迎并感谢指出.我一定认真学习积极改正.请勿DISS.
1853
sxjice545
文章数:424
年度积分:869
历史总积分:1853
品牌积分(施耐德):9
注册时间:2013/2/23
发站内信
发表于:2019/11/5 8:34:28
#7楼
各有优缺点。
2012年左右的时候,有用过信捷的PLC,支持部分的C,手册上有具体的支持部分。
使用下来有两点:
1.做复杂运算确实方便。当时是用来计算实时目标位置,快捷。
2.不支持输入输出。想要的输入输出,必须完全在块内定义好。

从PLC角度来说,更多的是逻辑控制,想要做大型的数据运算的话,不是PLC的关注。当然现在的PLC增加ST语言后,数据运算功能确实很强大,但仍然不是PLC的重点。

所以个人认为,能简单明了的用LD就用LD,确实需要大量运算而PLC能用ST方便处理,那就考虑用ST。毕竟,不是所有工程师都熟悉ST,甚至是C。方便程序后期维护,降低阅读程序门槛,这也蛮重要的。
2782
绿水
文章数:840
年度积分:231
历史总积分:2782
品牌积分(施耐德):10
注册时间:2005/5/12
发站内信
发表于:2019/11/5 8:44:25
#8楼
以下是引用sxjice5452019/11/5 8:34:28的发言:
各有优缺点。
2012年左右的时候,有用过信捷的PLC,支持部分的C,手册上有具体的支持部分。
使用下来有两点:
1.做复杂运算确实方便。当时是用来计算实时目标位置,快捷。
2.不支持输入输出。想要的输入输出,必须完全在块内定义好。

从PLC角度来说,更多的是逻辑控制,想要做大型的数据运算的话,不是PLC的关注。当然现在的PLC增加ST语言后,数据运算功能确实很强大,但仍然不是PLC的重点。

所以个人认为,能简单明了的用LD就用LD,确实需要大量运算而PLC能用ST方便处理,那就考虑用ST。毕竟,不是所有工程师都熟悉ST,甚至是C。方便程序后期维护,降低阅读程序门槛,这也蛮重要的。


听朋友说相比梯形图,ST更容易读懂?
青山常在,绿水长流
922
zhanghaiw
文章数:24
年度积分:371
历史总积分:922
品牌积分(施耐德):1
注册时间:2015/1/26
发站内信
发表于:2019/11/5 8:50:48
#9楼
回复 #2楼 fujifa
C语言;这些特性都可以实现。
工控学堂推荐视频:

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 中华工控网 Copyright©2019 Gkong.com, All Rights Reserved

140.4