跳到正文

Wiki

Linux硬件通信

約 2 分鐘閱讀

本文由簡體中文內容確定性轉換,並受版本化術語表保護。

1.Linux 機械人通信基礎教程介紹

機械人系統並不是只有算法和控制,底層通信同樣非常重要。

在實際項目中,上位機經常需要和各種硬件設備進行數據交互,例如和 STM32 通信、讀取傳感器數據、控制電機驅動器、連接激光雷達、和其他計算節點交換數據等。

這些功能最終都離不開通信。

1.1.常見通信方式

在 Linux 機械人開發中,常見的通信方式主要包括:

通信方式 常見場景 典型用途
串口 UART / USB Serial STM32、ESP32、傳感器、調試模塊 上位機與下位機通信、簡單設備控制
CAN / CAN FD 電機驅動器、底盤控制板、車輛總線 多節點設備通信、電機控制、底盤控制
TCP / UDP 激光雷達、網絡相機、多程序通信、遠程控制 網絡設備通信、上位機之間通信
Modbus RTU / TCP PLC、變頻器、工業傳感器 工業設備通信
EtherCAT 伺服驅動器、工業機械人、運動控制系統 高實時性多軸控制
I2C IMU、温濕度傳感器、OLED、ADC 嵌入式 Linux 直連低速傳感器
SPI 高速 ADC、屏幕、部分傳感器模塊 嵌入式 Linux 直連高速外設

這些通信方式各有適用場景,並沒有絕對的好壞。實際工程中,通常是根據硬件接口、實時性要求、設備數量和項目複雜度來選擇。

1.2.講硬件之前要先講Linux硬件綁定等相關知識

待更新