var ros = new ROSLIB.Ros({ url : 'ws://localhost:9190' }); ros.on('connection', function() { console.log('Connected to websocket server.'); }); ros.on('error', function(error) { console.log('Error connecting to websocket server: ', error); }); ros.on('close', function() { console.log('Connection to websocket server closed.'); }); function talker(canframeid,data0,data1,data2,data3,data4,data5,data6,data7){ var p0=Lu_StrToByte(data0); var p1=Lu_StrToByte(data1); var p2=Lu_StrToByte(data2); var p3=Lu_StrToByte(data3); var p4=Lu_StrToByte(data4); var p5=Lu_StrToByte(data5); var p6=Lu_StrToByte(data6); var p7=Lu_StrToByte(data7); /* alert("talker函数:"+canframeid+" "+data0+" "+data1+" "+data2+" "+data3+" "+data4+" "+data5+" "+data6+" "+data7+"\n"+ p0+" "+p1+" "+p2+" "+p3+" "+p4+" "+p5+" "+p6+" "+p7); */ var can_pub = new ROSLIB.Topic({ ros : ros, name : '/js_can', messageType : 'lu_ps20l_msgs/Msg_CANFrame' }); var can_msg = new ROSLIB.Message({ header: { stamp: { secs: 0, nsecs: 0 }, frame_id: "", seq: 0 }, id:parseInt(canframeid), is_rtr:false, is_extended:false, is_error:false, dlc:8, data:[p0,p1,p2,p3,p4,p5,p6,p7] }); can_pub.publish(can_msg); } function listener(){ var sub_Display_State=new ROSLIB.Topic({ ros : ros, name : '/Topic_Display_State', messageType : 'lu_ps20l_msgs/Msg_DisplayState' }); sub_Display_State.subscribe(function(message){ AGV_ID=message.AGV_ID; Sys_Mode=message.Sys_Mode; VehicleCtrlExpThrottle=message.VehicleCtrlExpThrottle; Warning_Code=message.Warning_Code; Car_Global_rx=message.Car_Global_rx; Car_Global_ry=message.Car_Global_ry; Car_Global_Theta=message.Car_Global_Theta; StartNode=message.StartNode; EndNode=message.EndNode; RealAutoChargeState=message.RealAutoChargeState; PWR_Percent=message.PWR_Percent; SVreal_angle=message.SVreal_angle; Speedm_Tmp=message.Speedm_Tmp; VehicleCtrlRealAltitude_mm=message.VehicleCtrlRealAltitude_mm; PWR_Warn=message.PWR_Warn; Curtis_Warning_Code=message.Curtis_Warning_Code; VehicleCtrlRealCustomStateByte0=message.VehicleCtrlRealCustomStateByte0; VehicleCtrlRealCustomStateByte1=message.VehicleCtrlRealCustomStateByte1; VehicleCtrlRealCustomStateByte2=message.VehicleCtrlRealCustomStateByte2; VehicleCtrlRealCustomStateByte3=message.VehicleCtrlRealCustomStateByte3; Remote_Or_HMI_Ctrl=message.Remote_Or_HMI_Ctrl; Get_Nav350_Curr_Layer=message.Get_Nav350_Curr_Layer; sub_Display_State.unsubscribe(); //var str= message.AGV_ID.toString()+' '+message.Sys_Mode.toString()+' '+message.VehicleCtrlExpThrottle.toString()+' '+message.Warning_Code.toString()+'\n'; //console.log(str); //document.getElementById('test').innerText= str; }); }