SCRIPT_VER=1 dim CANAlive as integer ' Alive Robocan nodes ' Read list of alive RoboCAN nodes CANAlive = getvalue(_CL, 1) ' Check if Slave is present if(CANAlive = 273) ' Scanning value for slave channel 1 ScanCANValue(2,_MOTAMPS,1,40,0) ScanCANValue(2,_MOTCMD,1,40,1) ScanCANValue(2,_MOTPWR,1,40,2) ScanCANValue(2,_ABSPEED,1,40,3) ScanCANValue(2,_ABCNTR,1,40,4) ScanCANValue(2,_BATAMPS,1,40,5) ScanCANValue(2,_ANAIN,1,40,6) ' Scanning value for slave channel 2 ScanCANValue(2,_MOTAMPS,2,40,7) ScanCANValue(2,_MOTCMD,2,40,8) ScanCANValue(2,_MOTPWR,2,40,9) ScanCANValue(2,_ABSPEED,2,40,10) ScanCANValue(2,_ABCNTR,2,40,11) ScanCANValue(2,_BATAMPS,2,40,12) ScanCANValue(2,_ANAIN,2,40,13) ' Scanning value independent from channel ScanCANValue(2,_VOLTS,2,40,14) ScanCANValue(2,_VOLTS,1,40,15) ScanCANValue(2,_VOLTS,3,40,16) ScanCANValue(2,_TEMP,1,40,17) ScanCANValue(2,_DI,6,40,18) ScanCANValue(2,_FLTFLAG,1,40,19) ScanCANValue(2,_STFLAG,1,40,20) end if top: ' Send feedback for this channel at ..Hz. GoSub PrintFeedback wait(5) ' Send status messages for the controller at ..Hz. c++ if c = 5 then GoSub PrintStatus c = 0 end if wait(20) goto top PrintFeedback: print("&f:", 1) print(":", getvalue(_MOTAMPS, 1)) print(":", getvalue(_MOTCMD, 1)) print(":", getvalue(_MOTPWR, 1)) print(":", getvalue(_ABSPEED, 1)) print(":", getvalue(_ABCNTR, 1)) print(":", getvalue(_BATAMPS, 1)) print(":", getvalue(_ANAIN, 1)) print(":", 2) print(":", getvalue(_MOTAMPS, 2)) print(":", getvalue(_MOTCMD, 2)) print(":", getvalue(_MOTPWR, 2)) print(":", getvalue(_ABSPEED, 2)) print(":", getvalue(_ABCNTR, 2)) print(":", getvalue(_BATAMPS, 2)) print(":", getvalue(_ANAIN, 2)) if(CANAlive = 273) print(":", 3) print(":", ReadScannedCANValue(0)) print(":", ReadScannedCANValue(1)) print(":", ReadScannedCANValue(2)) print(":", ReadScannedCANValue(3)) print(":", ReadScannedCANValue(4)) print(":", ReadScannedCANValue(5)) print(":", ReadScannedCANValue(6)) print(":", 4) print(":", ReadScannedCANValue(7)) print(":", ReadScannedCANValue(8)) print(":", ReadScannedCANValue(9)) print(":", ReadScannedCANValue(10)) print(":", ReadScannedCANValue(11)) print(":", ReadScannedCANValue(12)) print(":", ReadScannedCANValue(13)) print(":", ReadScannedCANValue(14)) print(":", ReadScannedCANValue(18)) end if print(":", getvalue(_VOLTS, 2)) print(":", getvalue(_DI, 6)) print("\r") Return PrintStatus: print("&s:", SCRIPT_VER) print(":", getvalue(_FLTFLAG)) print(":", getvalue(_STFLAG)) print(":", getvalue(_VOLTS, 1)) print(":", getvalue(_VOLTS, 3)) print(":", getvalue(_TEMP, 1)) if(CANAlive = 273) print(":", SCRIPT_VER) print(":", ReadScannedCANValue(19)) print(":", ReadScannedCANValue(20)) print(":", ReadScannedCANValue(15)) print(":", ReadScannedCANValue(16)) print(":", ReadScannedCANValue(17)) end if print("\r") Return