Janine Klein Rot
/
PIPO
Ping Pong robot
main.cpp
- Committer:
- JKleinRot
- Date:
- 2014-10-13
- Revision:
- 1:7066a6113fbe
- Parent:
- 0:c37e4d7f1f56
- Child:
- 2:fbda25b453b3
File content as of revision 1:7066a6113fbe:
#include "mbed.h" //Mbed bibliotheek inladen, standaard functies #include "MODSERIAL.h" //MODSERIAL bibliotheek inladen, communicatie met PC #include "encoder.h" //Encoder bibliotheek inladen, communicatie met encoder #define BLABLA waarde //Constanten definiëren en een waarde toekennen //Pinverdeling en naamgeving variabelen Encoder motor_arm1( Encoder motor_arm2( // PwmOut pwm_motor_arm1 PwmOut pwm_motor_arm2 DigitalOut dir_motor_arm1 DigitalOut dir_motor_arm2 AnalogIn emg_bi AnalogIn emg_tri Ticker sample_EMG //Floats, bools bool rust = false bool kalibratie_positie = false bool kalibratie_EMG = false char lcd_r1 = new char[16]; //LCD regel 1, 16 karakters char lcd_r2 = new char[16]; //LCD regel 2, 16 karakters //Beginwaarden voor variabelen int main{ //pc baudrate pc.baud(//opzoeken!!) //ticker maken die iedere zoveel seconden de EMG data inlaadt sample_EMG.attach(setsample_EMGflag,0.005); while (1){ //Oneindige while loop if (rust = false && kalibratie_positie = false && kalibratie_EMG = false){ lcd_r1 = " BMT M9 GR. 4 "; //Tekst in LCD scherm lcd_r2 = "Hoi! Ik ben PIPO"; //Tekst in LCD scherm wait(2); //2 seconden wachten rust = true } if (rust = true && kalibratie_positie = false && kalibratie_EMG = false){ wait(1); //1 seconde wachten pwm_motor_arm1 = 0.02036 //Dutycycle/100 dir_motor_arm1 = // 1 of 0 //Richting motor while(motor_arm1 < 363){ //Zolang aantal encoderpulsen < 363 --> PWM motor1 blijft gelijk pwm_motor_arm1 = 0.02036 } pwm_motor_arm1 = 0 //Na while loop PWM motor1 op nul motor_arm1 = 0 //Encoderpulsen op nul zetten pwm_motor_arm2 = 0.02398 dir_motor_arm2 = // 1 of 0 while(motor_arm_2 < 787){ pwm_motor_arm2 = 0.02398 } pwm_motor_arm2 = 0 motor_arm2 = 0 lcd_r1 = " Beginpositie " //Tekst in LCD scherm lcd_r2 = " ingesteld " //Tekst in LCD scherm wait(2); //2 seconden wachten kalibratie_positie = true } if (rust = true && kalibratie_positie = true && kalibratie_EMG = false){ wait(1); //1 seconde wachten ybk = emg_bi.read(); ytk = emg_tri.read(); //detrend //hoogdoorlaatfilter