bobbycar/logdata_visualization/testsender/testsender.pde

94 lines
2.4 KiB
Plaintext

// Example by Tom Igoe
import processing.serial.*;
// The serial port:
Serial serial;
long last_send=0;
long last_update=0;
//Data
float time=0.0;
int cmd_FrontL;
int cmd_FrontR;
int cmd_RearL;
int cmd_RearR;
float current_FrontL;
float current_FrontR;
float current_RearL;
float current_RearR;
int speed_FrontL;
int speed_FrontR;
int speed_RearL;
int speed_RearR;
float temp_Front;
float temp_Rear;
float vbat_Front;
float vbat_Rear;
float currentAll;
int throttle;
int brake;
float n1=0.0;
void setup() {
// List all the available serial ports:
printArray(Serial.list());
//String serialport=Serial.list()[0];
String serialport="/dev/ttyUSB0";
// Open the port you are using at the rate you want:
serial = new Serial(this, serialport, 115200);
serial.write("time,cmd_FrontL,cmd_FrontR,cmd_RearL,cmd_RearR,current_FrontL,current_FrontR,current_RearL,current_RearR,speed_FrontL,speed_FrontR,speed_RearL,speed_RearR,temp_Front,temp_Rear,vbat_Front,vbat_Rear,currentAll,throttle,brake\n"); //write header
}
void draw() {
long loopmillis=millis();
if (loopmillis>last_send+20) {
last_send=loopmillis;
String wstring=time+","+cmd_FrontL+","+cmd_FrontR+","+cmd_RearL+","+cmd_RearR+","+current_FrontL+","+current_FrontR+","+current_RearL+","+current_RearR+","+speed_FrontL+","+speed_FrontR+","+speed_RearL+","+speed_RearR+","+temp_Front+","+temp_Rear+","+vbat_Front+","+vbat_Rear+","+currentAll+","+throttle+","+brake+"\n";
serial.write(wstring);
print(wstring);
}
if (loopmillis>last_update+20) {
last_update=loopmillis;
n1+=0.1;
time=loopmillis/1000.0;
updateValues();
}
}
void updateValues() {
cmd_FrontL=int(noise(n1,0)*1000);
cmd_FrontR=int(noise(n1,0.001)*1000);
cmd_RearL=int(noise(n1,0.02)*1000);
cmd_RearR=int(noise(n1,0.021)*1000);
current_FrontL=noise(n1,2)*10-3;
current_FrontR=noise(n1,2.001)*10-3;
current_RearL=noise(n1,2.02)*10-3;
current_RearR=noise(n1,2.021)*10-3;
speed_FrontL=int(noise(n1,5)*600);
speed_FrontR=int(noise(n1,5.001)*600);
speed_RearL=int(noise(n1,5.02)*600);
speed_RearR=int(noise(n1,5.021)*600);
temp_Front=noise(n1/100.0,10)*3+30;
temp_Rear=noise(n1/100.0,10.1)*3+30;
vbat_Front=-noise(n1/100.0,11)*4+12*4.2;
vbat_Rear=-noise(n1/100.0,11.2)*4+12*4.2;
currentAll=min(current_FrontL,current_FrontR,min(speed_RearL,speed_RearR));
throttle=int(noise(n1,15)*1000);
brake=max(0,int(noise(n1,18)*1000-800));
}