上位机闭环控制

作者:摩纳哥城赌场 发布时间:2020-09-24 17:30

  刘老师,你好。使用的GALIL运动控制卡控制伺服电机以位置模式运动,用光栅尺的反馈信号做闭环控制。现在用VC++开发上位机的控制面板,想要达到的目的是点击这个轴对应的按钮,电机按照给定的位移值运动,并且上位机能够实时的检测到光栅尺的反馈信号,并在对应的编辑框中实时更新。

  这段程序框架可不可以在一个线程里面就实现,如果可以,程序的大概流程是怎么样,现在想不通,请大神们指导指导!!!!

  原则上可以,做循环,每次循环从控制卡读光栅位置(或者还有其它状态信息),刷新屏幕显示,读用户操作(读按钮以及其它状态),将转换的相应命令发送到控制卡。

  您好,我想问一下,为什么我上位机用定时器查询TP,当前位置不能实时变化呢?我选择的是500ms,是不是太慢了?问了买东西这家的技术人员,跟我说是不用设定时器,实时显示每一个脉冲即可。但是不设定时器,怎么能实时显示每一个脉冲呢?

  此外还有个问题,建议每一个BG命令后加AM和MC,可是我加后,程序就会报错。谢谢!

  对: 我叫小青蛙添加galil库文件,然后做个定时器实时查询就可以了。内容的回复!

  刘老师,我现在也是需要上位机能够实时的检测到光栅尺的反馈信号,在galiltools里面能实时变化,但是我的里面设置的是5ms或500ms的定时器采集TP值,现在我的都是每次运动到最后一个位置才会显示位置,而在中间过程不变化,这是怎么回事呢?比如从0运动到2mm,中间的数值什么也不显示,只到最后才显示2mm。

  对: 刘岩利这段程序框架可不可以在一个线程里面就实现,原则上可以,...内容的回复!

  是指在控制卡上的程序里,在C程序里发送AM、MC这类等待指令,很可能导致通讯超时错误。

  现在我的都是每次运动到最后一个位置才会显示位置,而在中间过程不变化,这是怎么回事呢?

  这要看您的程序是怎么写的,开始运动的命令是如何发送的。另外问一句,是一谁建议您每一个BG命令后加AM和MC的?

  用上位机程序编程的话,肯定要设定时器的,不然怎么能实时查询galil控制器中的数据呢,我已经实现过多个实例,肯定没有问题的。

  对:您好,我想问一下,为什么我上位机用定时器查询TP,当前...内容的回复!


摩纳哥城赌场
© 2013 北京格林吉能源科技有限公司.版权所有 冀ICP备15020429号-1