用c ++实现机器人技术的实时编程

Hou*_*dri 5 c++ robot real-time

我正在使用C++和OpenCV开展机器人项目.在这一步中,我遇到了一个问题,包括:

我有两个方法moveRight()moveLeft()我在我的代码依次调用,但问题是,第二个不运行,因为第一个需要时间(机器人运动的时间),但是当我把Sleep(5000)他们之间的(我猜那五一秒钟足够运动),一切都好.

什么是避免使用的编程解决方案Sleep(因为它会产生一些其他问题)?

Kar*_*k T 6

您可以尝试添加一个间接层.添加要执行的操作队列,将操作排入moveLeft和moveRight,以及其他位置(不同的线程)通过在执行下一个操作之前等待上一个操作完成来正确执行队列中的操作.理想情况下,您需要一种方法来检查操作是否已完成,因此您可以基于事件的方式对其进行编码.