S200 Smart 系列的CPU PTO如何实现1us时基的PTO脉冲输出

之前在使用S200系列的时候,输入以下代码,CPU的Q0.0端口就可以每秒输出脉宽为100us的10个脉冲,可是移植到Smart里,无论怎么修改SMB67的值,PTO模式都只能输出10ms周期的脉冲,如果改为PWM模式,可以输出us时基的脉冲,但是又不能计数,如何解决这个问题呢?貌似Smart系列和S200系列在兼容性的问题上还是有很多出入
LD     Clock_1s:SM0.5
EU
MOVB   16#C5, PLS0_Ctrl:SMB67
MOVW   100, PLS0_Cycle:SMW68
MOVD   10, PTO0_PC:SMD72
PLS    0

图片说明:

S200 Smart 系列的CPU  PTO如何实现1us时基的PTO脉冲输出    S200 Smart 系列的CPU  PTO如何实现1us时基的PTO脉冲输出   

最佳答案

S7-200 与 S7-200 SMART 使用PLS指令控制脉冲串输出(PTO)的SM 定义不同,看看下面的链接,是不是有办法呢。
http://www.ad.siemens.com.cn/productportal/Prods/s7-200-smart-portal/200SmartTop/projectmigrator/PLS.htm

提问者对于答案的评价:
大宝兄的点解是正确的,小弟我太粗心,没留意帮助文件。SMW68在PWM模式和PTO模式含义是不一样的,分别表示周期和频率,不再像S200那样单独表示周期。问题解决了,可是新的问题也来了,16位的数频率最高只能65KHz,我想输出100KHz怎么办呢?

最佳答案作者回复:
在单段管道化期间,频率的上限为65,535Hz,如果需要更高的频率(最高为100,000Hz),则必须使用多段管道化。
还是在上在的链接中,看中间部分。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc281564.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日
下一篇 2020年10月30日

相关推荐