0

Revolution Pi で CANopen を使用しています MLS (Magnetic Line Sensor) からのデータがありますが、更新を即座に行う必要があるため、受信するデータが遅すぎます。データの更新をより速くするにはどうすればよいですか?

CAN は以下を使用してセットアップされます。

sudo ip link set can0 type can bitrate 125000
sudo ip link set can0 up
candump can0 -td

Python-can ライブラリを使用して基本的なプログラムを作成し、ポーリングが高速になるかどうかを調べました。

import can

can_interface = 'can0'
bus = can.interface.Bus(can_interface, bustype='socketcan')

while 1 < 2:
    bus.flush_tx_buffer()
    message = bus.recv()
    print(message)

メッセージデータを出力したデータ (candump のデータと同様) は、1 秒間に何度も新しいメッセージに投稿する必要がありますが、センサーからのメッセージ間で <1 秒から >10 分の間待機しています。

4

1 に答える 1