static
This commit is contained in:
406
static/Magic4/Sketch/HMI_Sketch_Left_LearnWayPointAB_Main.html
Normal file
406
static/Magic4/Sketch/HMI_Sketch_Left_LearnWayPointAB_Main.html
Normal file
@@ -0,0 +1,406 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en" id="container" onmousedown="startDrag(event)" onmouseup="stopDrag(event)" onmousemove="dragging(event)" style="overflow-x: hidden;
|
||||
overflow-y: hidden; ">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<!--<script type="text/javascript" src="../roslib.min.js"></script>-->
|
||||
<script src="../jquery-2.1.0.min.js"></script>
|
||||
<script src="../jquery.cookie.js"></script>
|
||||
<script type="text/javascript" src="../Lu_Math_Driver.js"></script>
|
||||
<script type="text/javascript">
|
||||
var WayPointRecArr=new Array();
|
||||
var WayPointRecSch=0;
|
||||
|
||||
var LearnWayPointAB_Sch=0;
|
||||
var PointA_rx=0;
|
||||
var PointA_ry=0;
|
||||
var PointA_rt=0;
|
||||
var PointA_Ref_NodeID=0;
|
||||
|
||||
var PointB_rx=0;
|
||||
var PointB_ry=0;
|
||||
var PointB_rt=0;
|
||||
var PointB_Ref_NodeID=0;
|
||||
|
||||
var StartNode=0;
|
||||
var EndNode=0;
|
||||
var Direction="Front";
|
||||
|
||||
var LayerType="Normal";
|
||||
var CreatePairDirectionEnable="true";
|
||||
var ReverseSafeSensorEnable="true";
|
||||
var S300_1_Enable="false";
|
||||
var S300_1_Case=0;
|
||||
var S300_2_Enable="false";
|
||||
var S300_2_Case=0;
|
||||
var TIM_1_Enable="true";
|
||||
var TIM_1_Case=0;
|
||||
var TIM_2_Enable="false";
|
||||
var TIM_2_Case=0;
|
||||
var SpeedType=0;
|
||||
|
||||
var last_rx_tmp=0;
|
||||
var last_ry_tmp=0;
|
||||
var last_rt_tmp=0;
|
||||
|
||||
var Tmp_Speed_Direction=0;
|
||||
var Speed_Direction_Sum=0;
|
||||
|
||||
var Car_Global_rx=0;
|
||||
var Car_Global_ry=0;
|
||||
var Car_Global_Theta=0;
|
||||
|
||||
var Last_Rec_Car_Global_rx=0;
|
||||
var Last_Rec_Car_Global_ry=0;
|
||||
var Last_Rec_Car_Global_Theta=0;
|
||||
|
||||
var LastRecWayPoint=false;
|
||||
|
||||
//clearCookie("LearnWayPointAB_Sch");
|
||||
|
||||
//var IP=window.location.host;
|
||||
/*
|
||||
var ros = new ROSLIB.Ros({
|
||||
//url : 'ws://'+IP+':9290'
|
||||
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 SketchLeftLearnWayPointABMainPostMessage(str){
|
||||
parent.window.postMessage(
|
||||
str,
|
||||
"*" //or "www.parentpage.com"
|
||||
);
|
||||
}
|
||||
|
||||
function LearnWayPointAB_Main_Init(){
|
||||
LearnWayPointAB_Sch=0;
|
||||
PointA_rx=0;
|
||||
PointA_ry=0;
|
||||
PointA_rt=0;
|
||||
PointA_Ref_NodeID=0;
|
||||
|
||||
PointB_rx=0;
|
||||
PointB_ry=0;
|
||||
PointB_rt=0;
|
||||
PointB_Ref_NodeID=0;
|
||||
|
||||
StartNode=0;
|
||||
EndNode=0;
|
||||
Direction="Front";
|
||||
|
||||
LayerType="Normal";
|
||||
CreatePairDirectionEnable="true";
|
||||
ReverseSafeSensorEnable="true";
|
||||
S300_1_Enable="false";
|
||||
S300_1_Case=0;
|
||||
S300_2_Enable="false";
|
||||
S300_2_Case=0;
|
||||
TIM_1_Enable="false";
|
||||
TIM_1_Case=0;
|
||||
TIM_2_Enable="false";
|
||||
TIM_2_Case=0;
|
||||
SpeedType=0;
|
||||
|
||||
last_rx_tmp=0;
|
||||
last_ry_tmp=0;
|
||||
last_rt_tmp=0;
|
||||
|
||||
Tmp_Speed_Direction=0;
|
||||
Speed_Direction_Sum=0;
|
||||
|
||||
LastRecWayPoint=false;
|
||||
}
|
||||
|
||||
function client_request_left_learnwaypointab_main(str){
|
||||
window.parent.parent.postMessage(
|
||||
{
|
||||
event_id: 'client_request_left_learnwaypointab_main',
|
||||
data: {
|
||||
v1: str
|
||||
}
|
||||
},
|
||||
"*" //or "www.parentpage.com"
|
||||
);
|
||||
}
|
||||
/*
|
||||
function client(str){
|
||||
var client_LearnString=new ROSLIB.Service({
|
||||
ros:ros,
|
||||
name:'/Service_LearnString',
|
||||
serviceType:'lu_ps20l_msgs/Srv_LearnString'
|
||||
});
|
||||
|
||||
var request = new ROSLIB.ServiceRequest({
|
||||
Learn_String_Input:str
|
||||
});
|
||||
|
||||
client_LearnString.callService(request,function(result) {
|
||||
//console.log(result);
|
||||
document.getElementById('LeftLearnWayPointABIframe').contentWindow.postMessage(
|
||||
{
|
||||
event_id: 'client_response',
|
||||
data: {
|
||||
v1: result.result,
|
||||
v2: result.ROS_String_Output,
|
||||
v3: result.Rec_Learn_String_Input
|
||||
}
|
||||
},
|
||||
"*" //or "www.parentpage.com"
|
||||
);
|
||||
});
|
||||
}*/
|
||||
|
||||
function receiveMessage(event){
|
||||
//console.log(event);
|
||||
if(event.data.event_id=="client_response_left_learnwaypointab_main"){
|
||||
document.getElementById('LeftLearnWayPointABIframe').contentWindow.postMessage(
|
||||
event.data
|
||||
);
|
||||
return;
|
||||
}
|
||||
var frame=event.data.split('#');
|
||||
var head=frame[0].split(':');
|
||||
|
||||
switch(head[0]){
|
||||
case 'LearnWayPointABSch0':
|
||||
{
|
||||
//var info=head[1].split('#');
|
||||
var data=head[1].split(',');
|
||||
PointA_rx=parseFloat(data[0]);
|
||||
PointA_ry=parseFloat(data[1]);
|
||||
PointA_rt=parseFloat(data[2]);
|
||||
PointA_Ref_NodeID=parseInt(data[3]);
|
||||
LearnWayPointAB_Sch=1;
|
||||
window.open('HMI_Sketch_Left_LearnWayPointAB_Sch1.html', 'LeftLearnWayPointABIframe');
|
||||
}break;
|
||||
case 'LearnWayPointABSch1':{
|
||||
var data=head[1].split(',');
|
||||
PointB_rx=parseFloat(data[0]);
|
||||
PointB_ry=parseFloat(data[1]);
|
||||
PointB_rt=parseFloat(data[2]);
|
||||
PointB_Ref_NodeID=parseInt(data[3]);
|
||||
LearnWayPointAB_Sch=2;
|
||||
window.open('HMI_Sketch_Left_LearnWayPointAB_Sch2.html', 'LeftLearnWayPointABIframe');
|
||||
}break;
|
||||
case 'LearnWayPointABSch2':{
|
||||
console.log("AAALearnWayPointABSch2");
|
||||
var data=head[1].split(',');
|
||||
StartNode=parseInt(data[0]);
|
||||
EndNode=parseInt(data[1]);
|
||||
Direction=data[2];
|
||||
S300_1_Enable=data[3];
|
||||
S300_1_Case=parseInt(data[4]);
|
||||
S300_2_Enable=data[5];
|
||||
S300_2_Case=parseInt(data[6]);
|
||||
TIM_1_Enable=data[7];
|
||||
TIM_1_Case=parseInt(data[8]);
|
||||
TIM_2_Enable=data[9];
|
||||
TIM_2_Case=parseInt(data[10]);
|
||||
SpeedType=parseInt(data[11]);
|
||||
CreatePairDirectionEnable=data[12];
|
||||
ReverseSafeSensorEnable=data[13];
|
||||
|
||||
var str="CheckNode:"+
|
||||
StartNode+";"+
|
||||
+PointA_rx+";"
|
||||
+PointA_ry+";"
|
||||
+PointA_rt+";"
|
||||
+EndNode+";"
|
||||
+PointB_rx+";"
|
||||
+PointB_ry+";"
|
||||
+PointB_rt+";"
|
||||
//client(str);
|
||||
client_request_left_learnwaypointab_main(str);
|
||||
}break;
|
||||
case 'LearnWayPointABSch2_CheckNodeOK':{
|
||||
LearnWayPointAB_Sch=3;
|
||||
window.open('HMI_Sketch_Left_LearnWayPointAB_Sch3.html', 'LeftLearnWayPointABIframe');
|
||||
}break;
|
||||
case 'LearnWayPointABSch3':{
|
||||
var data=head[1];
|
||||
if(data=="OK"){
|
||||
var str="LearnWayPointAB_V2:"//var str="LearnWayPointAB_V3:"//var str="LearnWayPointAB_V4:"
|
||||
+StartNode+";"
|
||||
+EndNode+";"
|
||||
+Direction+";"
|
||||
+LayerType+";"
|
||||
+CreatePairDirectionEnable+";"
|
||||
+S300_1_Enable+";"
|
||||
+S300_1_Case+";"
|
||||
+S300_2_Enable+";"
|
||||
+S300_2_Case+";"
|
||||
+TIM_1_Enable+";"
|
||||
+TIM_1_Case+";"
|
||||
+TIM_2_Enable+";"
|
||||
+TIM_2_Case+";"
|
||||
+SpeedType+";";
|
||||
for(let i=0;i<WayPointRecArr.length;i++){
|
||||
if(i==0){
|
||||
var dist=Lu_Get_Dist(WayPointRecArr[i].Car_Global_rx,WayPointRecArr[i].Car_Global_ry,PointA_rx,PointA_ry);
|
||||
if(dist<1.0) {
|
||||
WayPointRecArr[i].Car_Global_rx = PointA_rx;
|
||||
WayPointRecArr[i].Car_Global_ry = PointA_ry;
|
||||
WayPointRecArr[i].Car_Global_Theta = PointA_rt;
|
||||
}
|
||||
}
|
||||
else if(i==WayPointRecArr.length-1){
|
||||
var dist=Lu_Get_Dist(WayPointRecArr[i].Car_Global_rx,WayPointRecArr[i].Car_Global_ry,PointB_rx,PointB_ry);
|
||||
if(dist<1.0) {
|
||||
WayPointRecArr[i].Car_Global_rx = PointB_rx;
|
||||
WayPointRecArr[i].Car_Global_ry = PointB_ry;
|
||||
WayPointRecArr[i].Car_Global_Theta = PointB_rt;
|
||||
}
|
||||
}
|
||||
str=str+"Point"+"@"+WayPointRecArr[i].Car_Global_rx+","+WayPointRecArr[i].Car_Global_ry+","+WayPointRecArr[i].Car_Global_Theta+";";
|
||||
}
|
||||
str=str+"|"+ReverseSafeSensorEnable+";"
|
||||
str=str+"#";
|
||||
//client(str);
|
||||
client_request_left_learnwaypointab_main(str);
|
||||
}
|
||||
LearnWayPointAB_Sch=4;
|
||||
window.open('HMI_Sketch_Left_LearnWayPointAB_Sch4.html', 'LeftLearnWayPointABIframe');
|
||||
}break;
|
||||
case 'LearnWayPointABSch4':{
|
||||
var data=head[1];
|
||||
if(data=="Continue") {
|
||||
LearnWayPointAB_Main_Init();
|
||||
window.open('HMI_Sketch_Left_LearnWayPointAB_Sch0.html', 'LeftLearnWayPointABIframe');
|
||||
}
|
||||
else{
|
||||
LearnWayPointAB_Main_Init();
|
||||
SketchLeftLearnWayPointABMainPostMessage("Main");
|
||||
}
|
||||
}break;
|
||||
}
|
||||
}
|
||||
window.addEventListener("message", receiveMessage, false);
|
||||
|
||||
function Lu_Judge_Last_Speed_Direction(rx,ry,rt){
|
||||
var run_dist = Lu_Get_Dist(rx,ry,last_rx_tmp,last_ry_tmp);
|
||||
if(run_dist>0.2){
|
||||
var a = Lu_Judge_StartToEnd_SpeedDirection(last_rx_tmp,last_ry_tmp,rx,ry,rt);
|
||||
last_rx_tmp=rx;
|
||||
last_ry_tmp=ry;
|
||||
last_rt_tmp=rt;
|
||||
return a;
|
||||
}
|
||||
else{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
function Refresh(){
|
||||
//var Car_Global_rx2=parseFloat(getCookie('Car_Global_rx')).toFixed(3);
|
||||
//var Car_Global_ry2=parseFloat(getCookie('Car_Global_ry')).toFixed(3);
|
||||
//var Car_Global_Theta2=parseFloat(getCookie('Car_Global_Theta')).toFixed(3);
|
||||
|
||||
Car_Global_rx=parseFloat($.cookie('Car_Global_rx'));//Car_Global_rx=parseFloat(getCookie('Car_Global_rx'));
|
||||
Car_Global_ry=parseFloat($.cookie('Car_Global_ry'));//Car_Global_ry=parseFloat(getCookie('Car_Global_ry'));
|
||||
Car_Global_Theta=parseFloat($.cookie('Car_Global_Theta'));//Car_Global_Theta=parseFloat(getCookie('Car_Global_Theta'));
|
||||
|
||||
//console.log("x:"+Car_Global_rx+" "+Car_Global_rx2);
|
||||
//console.log("y:"+Car_Global_ry+" "+Car_Global_ry2);
|
||||
//console.log("t:"+Car_Global_Theta+" "+Car_Global_Theta2);
|
||||
|
||||
|
||||
if(LearnWayPointAB_Sch==1){
|
||||
Tmp_Speed_Direction=Lu_Judge_Last_Speed_Direction(Car_Global_rx,Car_Global_ry,Car_Global_Theta);
|
||||
Speed_Direction_Sum=Speed_Direction_Sum+Tmp_Speed_Direction;
|
||||
if(Speed_Direction_Sum>=0)Direction="Front";
|
||||
else Direction="Reverse";
|
||||
//console.log(Tmp_Speed_Direction);
|
||||
}
|
||||
|
||||
|
||||
//console.log(Speed_Direction_Sum);
|
||||
|
||||
//console.log(Direction);
|
||||
|
||||
document.getElementById('StartNode').innerText = 'StartNode=' + StartNode;
|
||||
document.getElementById('EndNode').innerText = 'EndNode=' + EndNode;
|
||||
document.getElementById('Direction').innerText = 'Direction=' + Direction;
|
||||
|
||||
if(LearnWayPointAB_Sch>0){
|
||||
WayPointRecSch=1;
|
||||
}
|
||||
else{
|
||||
WayPointRecSch=0;
|
||||
}
|
||||
|
||||
if(WayPointRecSch==0){
|
||||
WayPointRecArr=[];
|
||||
LastRecWayPoint=false;
|
||||
}
|
||||
else if(WayPointRecSch==1){
|
||||
var dist=Lu_Get_Dist(Car_Global_rx,Car_Global_ry,Last_Rec_Car_Global_rx,Last_Rec_Car_Global_ry);
|
||||
if(LearnWayPointAB_Sch==1&&(dist>1.0||WayPointRecArr.length==0)){
|
||||
var Rec_WP=new Object();
|
||||
Rec_WP.Car_Global_rx=Car_Global_rx.toFixed(3);
|
||||
Rec_WP.Car_Global_ry=Car_Global_ry.toFixed(3);
|
||||
Rec_WP.Car_Global_Theta=Car_Global_Theta.toFixed(3);
|
||||
WayPointRecArr.push(Rec_WP);
|
||||
Last_Rec_Car_Global_rx=Car_Global_rx;
|
||||
Last_Rec_Car_Global_ry=Car_Global_ry;
|
||||
Last_Rec_Car_Global_Theta=Car_Global_Theta;
|
||||
}
|
||||
else if(LearnWayPointAB_Sch==2&& LastRecWayPoint==false){
|
||||
var Rec_WP=new Object();
|
||||
Rec_WP.Car_Global_rx=Car_Global_rx.toFixed(3);
|
||||
Rec_WP.Car_Global_ry=Car_Global_ry.toFixed(3);
|
||||
Rec_WP.Car_Global_Theta=Car_Global_Theta.toFixed(3);
|
||||
WayPointRecArr.push(Rec_WP);
|
||||
LastRecWayPoint=true;
|
||||
}
|
||||
}
|
||||
|
||||
var str="LearnWayPointAB_Sch:"+LearnWayPointAB_Sch+";";
|
||||
for(let i=0;i<WayPointRecArr.length;i++){
|
||||
str=str+"Point"+":"+WayPointRecArr[i].Car_Global_rx+","+WayPointRecArr[i].Car_Global_ry+","+WayPointRecArr[i].Car_Global_Theta+";";
|
||||
}
|
||||
str=str+"Direction:"+Direction+"#";
|
||||
$.cookie("LearnWayPointAB_Sch",encodeURIComponent(str),{secure: true});//setCookie("LearnWayPointAB_Sch",encodeURIComponent(str),1000);
|
||||
}
|
||||
|
||||
function Timer(){
|
||||
Refresh();
|
||||
|
||||
//console.log(LearnWayPointAB_Sch);
|
||||
//console.log(WayPointRecArr);
|
||||
}
|
||||
|
||||
window.setInterval("Timer()",100);
|
||||
</script>
|
||||
<title>Title</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id='LearnWayPointAB_Sch'> </div>
|
||||
|
||||
<div>
|
||||
<iframe id="LeftLearnWayPointABIframe" name="LeftLearnWayPointABIframe" width=100% height=560 src="HMI_Sketch_Left_LearnWayPointAB_Sch0.html" frameborder="2" scrolling="auto"></iframe>
|
||||
</div>
|
||||
<div id='PointA_rx'></div>
|
||||
<div id='PointA_ry'></div>
|
||||
<div id='PointA_rt'></div>
|
||||
<div id='PointB_rx'></div>
|
||||
<div id='PointB_ry'></div>
|
||||
<div id='PointB_rt'></div>
|
||||
<div id='StartNode'></div>
|
||||
<div id='EndNode'></div>
|
||||
<div id='Direction'></div>
|
||||
</body>
|
||||
<script src="../js/drag.js"></script>
|
||||
</html>
|
||||
Reference in New Issue
Block a user