4

如何用linux从串口发出pwm信号?(使用 python 或 c++)

我想直接连接一个电机来改变转速。

4

2 回答 2

3

除非你真的知道你在用接口做什么,否则这个想法可能是不明智的。如果完全使用这些引脚驱动的任何信号,则应仅提供信号电平驱动 - 您必须使用它来控制电机控制器或放大器实际电机驱动,不要直接连接电机。此外,串行端口输出的信号摆动-ve 和+ve 而不是零/+ve。

一种可能性是使用 DTR 信号,因为它通常可以独立控制(例如使用 python 将串行端口引脚设置为高电平中所述),但是通过软件您可能无法获得准确或有效控制电机所需的频率或精度,如果软件出现故障,您可以让电机全速运行 - 所以需要小心。

更好的解决方案是获得专用的数字和/或 PWM I/O 卡或 USB 设备,甚至是专用的电机控制器接口。像研华这样的工业计算机供应商将拥有合适的,而且成本可能更低的机器人爱好供应商。

于 2012-10-16T18:36:39.173 回答
1

怀疑你能做到这一点你正在使用一个 uart 接口......只需获取一个 arduino 或 someat 并将串行命令发送到 arduino(串行引脚)然后将正确的 pwm 信号输出其引脚......可能是 5 行 arduino 代码和另外 5 个 python 代码......

说了这么多,您可能会找到一些非常困难且笨拙的方法来通过串行输出 PWM 信号……但是您需要考虑这是否真的合适……

于 2012-10-16T17:08:45.820 回答