完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
上一篇主要讲解了一些基础操作,这一篇解决一些应用问题。
我的伺服电机在定制时就加上了力矩传感器,虽然已经集成好了,但我怎么才能实时读出力矩值呢?这个就需要用到TwinCAT3的读写数字量模拟量输入输出功能。我们找到I/O目录下的Drive,选项卡切换到CoE-Online,在下面这个大表中就能找到每个变量对应的地址字,比如我的力矩传感器变量就是Reference A/D input,对应地址字是2200。 然后我们切换到Process Data,这里PDO有两种类型,分别是接收和传输,这里先在PDO List中选中一个项,比如我选中Transmit PDO 1,对应地址字0x1A00,下面PDO Content本来是没有对象的,右键添加新项找到地址字0x2200并添加,Reference A/D input这个变量就被添加到Transmit PDO 1,这时候打开左边目录下Transmit PDO 1应该就会有变量Reference A/D input了。 然后我们需要打开MAIN并在变量区加上一行代码。数字量输入格式为DI AT%I*:BOOL,数字量输出格式为DO AT%Q*:BOOL,模拟量输入格式为AI AT%I*:INT,模拟量输出格式为AO AT%Q*:INT。其中数字量高低对应布尔值,高就是TRUE,低就是FALSE。模拟量对应整数0~32767,这个需要跟传感器的量程做一个换算,比如我的力矩传感器量程是0~50Nm,那么通过y=50/32767*x就可以得到力矩值。 然后我们再点击之前添加的Reference A/D input变量,在Variable选项卡下Linked to在MAIN中定义的变量,这样力矩值就能传输到MAIN中了。 接下来我们就可以通过Visualization显示力矩或是通过Scope观测力矩曲线了。在Visualization中通过工具箱简单编一个显示区,对Textfield关联力矩变量,这样当连接电机并启动PLC后框中就能实时显示力矩了。 在Scope目录下找到NC Axis,右键Target Browser,找到851下的力矩变量并双击添加,注意必须要“Active Configuration”后才有851,必须要“登录到”后851下才有变量。然后打开刚刚添加的力矩变量曲线,启动PLC并Start Record后就可以观测了。 另外一个问题,假设我们需要写插补或是其他跟t相关的程序,需要注意0.002s不是随便取的,是跟PlcTask的Cycle ticks设置的2ms相对应的。 这里贴一张我的电机做三次样条插补时的位置、速度、加速度曲线。可以看到位置(绿色)曲线还可以,但速度(蓝色)和加速度(黄色)曲线波动较大。 |
|
|
|
只有小组成员才能发言,加入小组>>
2480 浏览 0 评论
9376 浏览 4 评论
37077 浏览 19 评论
5079 浏览 0 评论
25117 浏览 34 评论
1684浏览 2评论
1939浏览 1评论
2401浏览 1评论
1706浏览 0评论
700浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-3 02:27 , Processed in 1.451046 second(s), Total 74, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号