作者 | 主题 |
---|---|
WWCWWC 至圣 经验值: 72003 发帖数: 8041 精华帖: 145 |
楼主 2022-05-05 09:43:42
主题:未调用PWM指令的一种应用 未调用PWM指令的一种应用 今天下午,在S7-1200版区,看到我之前发帖的网友回复,网友告诉我类似PWM脉冲转换电压板的商家,据说可以在所有晶体管输出的DO模块上实现PWM转换电压的功能。我想既然我有硬件条件,何不再测试一番呢。 我们知道,S7-1200的高速脉冲输出的资源是有限的,图示: 我测试的S7-1214C可以调用4路PWM高速脉冲输出,其它的所有S7-1200系列均可以调用4路是PWM脉冲输出。 针对于网友的回复,我大概思考了一个测试方向。就是在测试项目中,调用循环定时中断,如OB30,设置循环定时中断的时间周期为1mS,脉冲的宽度暂时定在100mS,这样做的目的就是想让每以路脉冲占空比的输出在0 ~ 100%之间任意调整。 普通数字量输出方式的脉冲输出测试: 1)创建一个循环定时中断,设置中断时间为1mS,图示: 2)在OB30中编辑我需要的测试程序: 3)哦,对了。由于我忘了带万用表来判断PWM转换电压的输出值,也正好S7-1214C本机集成有2路模拟量电压输入,正好拿来使用,于是,又组态了模拟量通道0: 创建了一个测试需要的数据块DB1: 4)连接所有外部线路,上电后,编译保存项目,将硬件及程序下载到S7-1214C的cpu中: 先测试占空比50%试试:以下所有的测试数据没有经过转换板电位器的修调,目的只是看普通晶体管输出通过PWM转换电压的效果。 数据在4.0 ~ 5.2V之间来回跳动,不是很稳定。 5)返回设备视图的cpu属性的硬件组态,修改模拟量输入通道的滤波常数试试: 设置到最强的选项载测试: 数据明显的稳定了,在5.0 ~ 5.1V之间变化。 6)再将占空比设置到10%试试结果如何: 能够满足测试,再试试控制精度,将占空比数据设置到15%,看结果: MD14在1 ~ 2之间变化,这一个是我的转换程序的精度问题了,重新修改SCALE_X的MAX管脚为100.0,(实际上看NORM_X指令也能够看到输出1.59V左右的数据值): 比例缩放MAX放大到100.0后,出现了想要的模拟1.5V的显示。我试着将占空比试着为1%,同样能够输出0.1V左右的电压。 测试完成,普通的数字量晶体管输出,通过用户自己定义的脉宽PWM调制,调制出一个脉冲串来转换为电压的功能,这样能够实现,这将对plc模拟量输出的数量限制变的模糊起来了。上述测试结果纯粹是个人喜好,就是闹着玩似的,所测试的结果也具有一定的局限性。 |
李岩 至圣 经验值: 13626 发帖数: 2834 精华帖: 32 |
1楼 2022-05-05 13:51:33
主题:回复:未调用PWM指令的一种应用 本胖的思路跟这个差不多,但...... 1、如果单纯的是为了输出电压,PWM的周期应该尽可能的短,如果精度要求是1%,那就跟楼主的一样了。如果是控制加热(SSR),那周期可以设置为1s或者更长。 2、给定值如果是连续变化的,该咋办?本胖的想法是在每个“PWM”周期开始的时候“采样”一次给定值。在本次PWM未完成之前这个给定值不变。
国人当自强 共同努力 抵制日货
|
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
2楼 2022-05-05 13:58:12
主题:回复:未调用PWM指令的一种应用
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|
WWCWWC 至圣 经验值: 72003 发帖数: 8041 精华帖: 145 |
3楼 2022-05-05 14:47:49
主题:回复:未调用PWM指令的一种应用 想法可以有,贵在验证测试这一关,首先是需要过了这一关,才可以去现场实际测试应用。 上述测试,也是昨天网友交流聊天时的内容验证。我开始是模拟仿真的,因为没有实体机测试,担心在这样的频率下是否还能够稳定。但是,从昨天晚上在实体机上测试的结果,应该可以值得去现场应用。plc这侧是没有问题的应该是稳定的,真正应用只是担心PWM转换板的稳定性了。 |
莘莘学子 至圣 经验值: 19213 发帖数: 3837 精华帖: 1 |
4楼 2022-05-05 16:31:17
主题:回复:未调用PWM指令的一种应用 要链接下面的帖子才专注了。 http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1760346&b_id=50&s_id=0&num=13#anch
弘扬中华传统美德,无私奉献为根本,助人为乐为根源。
|