完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
1、前言
最近使用三菱电机进行一维往复运动平台的驱动和控制,由于客户端太过于臃肿,因此期望写一个简略直接的控制上位机。 2、配置 驱动器是MR-J4-10A 伺服电机HG-KR13J 控制软件是MR configure2 3、控制方式 USB: 配合三菱电机控制软件,不开放接口给用户 RS422:有ASCII码组成的字符协议,可以依照协议进行控制。如果三菱有提供简单的封装代码最好了 PLC脉冲:使用官方PLC编程控制 RS422 三菱有RS422通信协议说明文档,介绍了通信格式,依据格式进行通信即可,不过每条指令都要自己生成较为麻烦。而且各个指令之间的配合和限定关系,有些阐述的不是很明白。 1、JOG(点动)运行,通过推荐的指令可以进行正常运行。 若是模仿MR configure实现的功能,按钮一直按下则一直运行,松开即停止。方法为:启动之前的参数都先配置好,然后重载PreTranslateMessage,识别左键按下消息,并且检查消息MSG结构里的m_hwnd指向的是哪个按钮的,若是正反运行的,则打开定时器,1ms间隔中断持续发送启动指令则一直运行,若是只是发送一起启动指令则只运行一定长度即停止。停止时则关闭定时器,发送停止指令。若要及时停止最好直接往通信口写,通过线程也可,不过对响应速度有一定影响。 2、定位运行 通过指令进行控制,启动之前的指令可以事先配置,不过若是更改状态,需要将所有指令重新配置一遍,不然发送“启动“会按照之前的配置运行。 不过有一个问题,定位运行总是运行很短时间即停止,导致设置的脉冲量没有走完,后续的指令就不起作用了。 翻查资料并未看到有说明此问题的,后来尝试一直发送启动指令无法起作用。 尝试发送GO指令会继续 运行,但是若需要运行的时间更长,怎需要发送多次GO;Go的次数过少会出现运行停止,等到下一个GO会重新启动;为了防止他停止,因此需要一直很快的发送GO指令。实现方法为使用定时器定时发送Go指令,在运行时。停止运行时,停止定时器,发送停止按钮。 此外,发现直接发送CLR指令不能使定位运行停止,而Stop可以停止,但是并没有清除数据。因此需要先发送Stop再发送CLR则实现停止功能。 |
|
|
|
只有小组成员才能发言,加入小组>>
2176 浏览 0 评论
7875 浏览 4 评论
35707 浏览 18 评论
4787 浏览 0 评论
23279 浏览 34 评论
934浏览 2评论
1183浏览 1评论
1413浏览 1评论
1028浏览 0评论
1474浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-19 15:15 , Processed in 1.390919 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号