自动驾驶车辆抢占式调度算法
Preemptive scheduling algorithm for autonomous vehicle
我不确定这是否是这个问题的最佳位置,但我认为这个问题与最优调度算法和排队论有一些关系,所以希望它会没问题。
我正着手制造一辆 RC 汽车来自动导航课程。这个想法是它会一直直线行驶,直到其中一个接近传感器检测到墙壁或其他障碍物,这将导致中断和转向调整。
我在嵌入式系统课程中学习了一些关于 RTOS 调度算法的知识,在网络性能课程中学习了抢占式队列,所以我想知道在对微控制器进行编程时将这些概念应用于此任务是否会受益,还是我想多了?主要目标是以汽车尽可能快地行驶而不会发生碰撞的方式开发它,但我也想将它作为次要目标来防止它变得紧张。
所以,我想从高层次的角度来看,是否有特定的方法、方案或类型的调度策略来使用中断,从而为这样的系统带来最佳性能?是否有任何我应该禁用中断的特定关键部分?作为硬件限制的参考,我计划使用类似于 arduino 的微控制器,可能带有三个红外传感器。非常感谢任何意见或建议。
在这里使用 RTOS 有点矫枉过正。你需要想到的是:
- 您将使用哪种类型的传感器:距离(return 到物体的距离)或存在(仅指示是否存在障碍物)?距离传感器需要一些处理(运行 ADC 转换或读取 I2C),而存在传感器可以直接连接到 uC 的外部中断。
- 如何保证你的车真正直行?你会发现,即使理论上你命令它直行,它也可能会稍微转弯。
根据以上问题的答案:
如果您使用存在传感器,请尽快处理它们。即使您有任何其他控制算法 运行ning(如某些 PID),中断它也不是问题。
如果使用模拟距离传感器,请使用ADC转换就绪中断。然后,如果你有朝向两侧的传感器,你可以使用 returned 值来保持与墙壁的恒定距离,结果,直线行驶(查看微型鼠标机器人)
底线:如果您想快速前进并避免撞墙 - 尽可能快地处理传感器。
我不确定这是否是这个问题的最佳位置,但我认为这个问题与最优调度算法和排队论有一些关系,所以希望它会没问题。
我正着手制造一辆 RC 汽车来自动导航课程。这个想法是它会一直直线行驶,直到其中一个接近传感器检测到墙壁或其他障碍物,这将导致中断和转向调整。
我在嵌入式系统课程中学习了一些关于 RTOS 调度算法的知识,在网络性能课程中学习了抢占式队列,所以我想知道在对微控制器进行编程时将这些概念应用于此任务是否会受益,还是我想多了?主要目标是以汽车尽可能快地行驶而不会发生碰撞的方式开发它,但我也想将它作为次要目标来防止它变得紧张。
所以,我想从高层次的角度来看,是否有特定的方法、方案或类型的调度策略来使用中断,从而为这样的系统带来最佳性能?是否有任何我应该禁用中断的特定关键部分?作为硬件限制的参考,我计划使用类似于 arduino 的微控制器,可能带有三个红外传感器。非常感谢任何意见或建议。
在这里使用 RTOS 有点矫枉过正。你需要想到的是:
- 您将使用哪种类型的传感器:距离(return 到物体的距离)或存在(仅指示是否存在障碍物)?距离传感器需要一些处理(运行 ADC 转换或读取 I2C),而存在传感器可以直接连接到 uC 的外部中断。
- 如何保证你的车真正直行?你会发现,即使理论上你命令它直行,它也可能会稍微转弯。
根据以上问题的答案:
如果您使用存在传感器,请尽快处理它们。即使您有任何其他控制算法 运行ning(如某些 PID),中断它也不是问题。
如果使用模拟距离传感器,请使用ADC转换就绪中断。然后,如果你有朝向两侧的传感器,你可以使用 returned 值来保持与墙壁的恒定距离,结果,直线行驶(查看微型鼠标机器人)
底线:如果您想快速前进并避免撞墙 - 尽可能快地处理传感器。