Dependencies: mbed QEI HIDScope biquadFilter MODSERIAL FastPWM
Diff: main.cpp
- Revision:
- 9:6537eead1241
- Parent:
- 8:6f6a4dc12036
--- a/main.cpp Fri Oct 04 17:44:30 2019 +0000 +++ b/main.cpp Sat Oct 05 16:38:45 2019 +0000 @@ -37,8 +37,64 @@ float pot_1 = 0; float pot_2 = 0; +/* +float x_movement = 0; +float y_movement = 0; +float angle = 0; +float extention = 0; + +void calibration() { //kalibratie van de sensoren (de nulstand invoeren) + letter = pc.getc() // krijg de letter vanuit de keyboard + while (letter == w){ // of hier een while loop moet ja of nee, geen idee, lijkt me beter dan een if naar mijn mening. Eigenlijk wil je iets op de rising en falling edge hebben om zo het begin en het eind erin te kunne zetten. + y_movement = 1; + } + while (letter == a) { + x_movement = -1; + } + while (letter == s){ + y_movement = -1; + } + while (letter == d) { + x_movement = 1; + } + robot_kinematics() // hoe dat dit precies moet geen idee. Dit lijkt me een goed begin of iig een begin + x_movement = 0; + y_movement = 0; + + + +} +void robot_kinematics() { //hoe de motoren moeten draaien als er een x of y richting als input is. + [motor.dir1, motor.dir2; motor.speed1, motor.speed2] = H^-1 *[x_movement, y_movement; angle] // Zoiets + + +} +*/ + // the funtions needed to run the program void measure_signals() { + + /* + letter = pc.getc() // krijg de letter vanuit de keyboard + if (letter == w){ + y_movement = 1; + } + if (letter == a) { + x_movement = -1; + } + if (letter == s){ + y_movement = -1; + } + if (letter == d) { + x_movement = 1; + } + + angle = (encoder1.getPulses()-angle_0)/8400*360; //kijkt op welke stand encoder 1 nu staat (dat hoort dus de basis motor te zijn!) /8400 signalen per rotatie * 360 graden + extention = encoder2.getPulses()-extention_0/8400*8*5.05; //kijkt hoever de arm is uitgeschoven (/8400 per rotatie *8mm per rotatie aan verschuiving * 5.05 de gear ratio) + + + */ + pot_1 = Pot1.read(); pc.printf("pot_1 = %f",pot_1); // Dit doet hij niet, waarom niet? Er scheelt niet veel aan, maar toch motor.speed1 = pot_1*0.75; //pod_read * 0.75 (dus max 75%) @@ -162,7 +218,7 @@ but1.fall(&but1_interrupt); but2.fall(&but2_interrupt); - loop_ticker.attach(&main_loop, 0.1f); //main loop at 1kHz + loop_ticker.attach(&main_loop, 0.1f); //main loop at 1kHz (niet per tiende seconde?) pc.printf("Main_loop is running\n \r"); while (true) {} } \ No newline at end of file