/************************************************************************************** * linux CANopenSocket 初試 * 說明: * 最近需要了解CANopen上的一些東西,於是找到這個資源來學一下,確實是個好東西。 * * 2016-8-12 深圳 南山平山村 曾劍鋒 *************************************************************************************/ 一. 參考文檔: https://github.com/CANopenNode/CANopenSocket 二. 測試一下: 1. 下載源碼: 1. git clone https://github.com/CANopenNode/CANopenSocket.git 2. cd CANopenSocket 3. git submodule init 4. git submodule update 2. 生成Linux虛擬設備: 1. sudo modprobe vcan 2. sudo ip link add dev vcan0 type vcan 3. sudo ip link set up vcan0 3. 安裝can-utils,並運行candump: 4. sudo apt-get install can-utils 5. candump vcan0 4. 另外開一個終端運行canopend: 1. cd CANopenSocket/canopend 2. make 3. ./canopend --help 4. ./canopend vcan0 -i 4 -s od4_storage -a od4_storage_auto 三. 輸出結果: 1. canopend輸出: zengjf@zengjf:~/os/CANopenSocket/canopend/app$ ./canopend vcan0 -i 3 -c "" ./canopend - starting CANopen device with Node ID 3(0x03), count=1 ... ./canopend - communication reset ... ./canopend - Command interface on socket '/tmp/CO_command_socket' started ... ./canopend - running ... ^C./canopend on vcan0 (nodeId=0x03) - finished. 2. candump獲取的數據: zengjf@zengjf:~/os/CANopenSocket$ candump vcan0 vcan0 704 [1] 00 vcan0 084 [8] 00 50 01 2F F3 FF FF FF vcan0 704 [1] 7F vcan0 704 [1] 7F vcan0 704 [1] 7F vcan0 704 [1] 7F vcan0 704 [1] 7F vcan0 704 [1] 7F