Minor BioRobotics BMT Hierbij publish ik mijn code public ter inspiratie voor komende jaarlagen. Het gaat om een serial robot met twee links en een haak als end-effector. Veel plezier ermee!

Dependencies:   mbed QEI HIDScope biquadFilter MODSERIAL FastPWM

Committer:
fb07
Date:
Wed Sep 25 08:35:17 2019 +0000
Revision:
2:45a85caaebfb
Parent:
1:b862262a9d14
Child:
3:4a673901c19f
First set-up of the code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
fb07 2:45a85caaebfb 1 // Project BioRobotics - Opening a Door - Group 13 2019/2020
fb07 2:45a85caaebfb 2 // Dion ten Berge - s1864734
fb07 2:45a85caaebfb 3 // Bas Rutteman - s1854305
fb07 2:45a85caaebfb 4 // Nick in het Veld - s1915584
fb07 2:45a85caaebfb 5 // Marleen van der Weij - s1800078
fb07 2:45a85caaebfb 6 // Mevlid Yildirim - s2005735
fb07 2:45a85caaebfb 7
fb07 2:45a85caaebfb 8 DigitalOut led(LED_RED); //Geen idee waar we dit kwijt willen
fb07 2:45a85caaebfb 9 MODSERIAL pc(USBTX, USBRX); //Geen idee waar we dit kwijt willen
fb07 2:45a85caaebfb 10
fb07 2:45a85caaebfb 11 //*****************************************************************************
fb07 2:45a85caaebfb 12 // 1. Libraries ******************************************************************
fb07 2:45a85caaebfb 13 //*****************************************************************************
RobertoO 0:67c50348f842 14 #include "mbed.h"
fb07 2:45a85caaebfb 15 #include "HIDScope.h"
fb07 2:45a85caaebfb 16 #include "QEI.h"
RobertoO 1:b862262a9d14 17 #include "MODSERIAL.h"
fb07 2:45a85caaebfb 18 #include "BiQuad.h"
fb07 2:45a85caaebfb 19 #include "FastPWM.h"
fb07 2:45a85caaebfb 20
fb07 2:45a85caaebfb 21 //*****************************************************************************
fb07 2:45a85caaebfb 22 // 2. States ******************************************************************
fb07 2:45a85caaebfb 23 //*****************************************************************************
fb07 2:45a85caaebfb 24 enum States {waiting}; //All robot states
RobertoO 0:67c50348f842 25
fb07 2:45a85caaebfb 26 //*****************************************************************************
fb07 2:45a85caaebfb 27 // 3. Global Variables ***********************************************************
fb07 2:45a85caaebfb 28 //*****************************************************************************
fb07 2:45a85caaebfb 29 Ticker loop_ticker; // The Ticker object that will ensure perfect timing of our looping code
RobertoO 0:67c50348f842 30
fb07 2:45a85caaebfb 31
fb07 2:45a85caaebfb 32
RobertoO 0:67c50348f842 33
fb07 2:45a85caaebfb 34 //******************************************************************************
fb07 2:45a85caaebfb 35 // 4. Main Loop ****************************************************************
fb07 2:45a85caaebfb 36 //******************************************************************************
fb07 2:45a85caaebfb 37
fb07 2:45a85caaebfb 38 void main_loop() { //Beginning of main_loop()
fb07 2:45a85caaebfb 39 pcprintf("main_loop is running succesfully \r\n")
fb07 2:45a85caaebfb 40
fb07 2:45a85caaebfb 41 // 4.1 Measure Analog and Digital input signals ********************************
fb07 2:45a85caaebfb 42 // 4.2 Run state-machine(s) ****************************************************
fb07 2:45a85caaebfb 43 // 4.3 Run controller(s) *******************************************************
fb07 2:45a85caaebfb 44 // 4.4 Send output signals to digital and PWM output pins **********************
fb07 2:45a85caaebfb 45
fb07 2:45a85caaebfb 46
fb07 2:45a85caaebfb 47 } //Ending of main_loop()
fb07 2:45a85caaebfb 48
fb07 2:45a85caaebfb 49 //******************************************************************************
fb07 2:45a85caaebfb 50 // 5. Main function ************************************************************
fb07 2:45a85caaebfb 51 //******************************************************************************
fb07 2:45a85caaebfb 52 int main()
fb07 2:45a85caaebfb 53 { //Beginning of Main() Function
fb07 2:45a85caaebfb 54 //All the things we do only once, some relevant things are now missing here: set pwmperiod to 60 microsec. Set Serial comm. Etc. Etc.
fb07 2:45a85caaebfb 55 // 5.1 Initialization **********************************************************
RobertoO 0:67c50348f842 56 pc.baud(115200);
fb07 2:45a85caaebfb 57 pc.printf("\r\nStarting Project BioRobotics - Opening a Door " //print Project information
fb07 2:45a85caaebfb 58 "- Group 13 2019/2020 \r\n"
fb07 2:45a85caaebfb 59 "Dion ten Berge - s1864734 \r\n"
fb07 2:45a85caaebfb 60 "Bas Rutteman - s1854305 \r\n"
fb07 2:45a85caaebfb 61 "Nick in het Veld - s1915584 \r\n"
fb07 2:45a85caaebfb 62 "Marleen van der Weij - s1800078 \r\n"
fb07 2:45a85caaebfb 63 "Mevlid Yildirim - s2005735 \r\n");
RobertoO 0:67c50348f842 64
fb07 2:45a85caaebfb 65 loop_ticker.attach(&main_loop,0.001f); //Run the function main_loop1000 times per second
fb07 2:45a85caaebfb 66
fb07 2:45a85caaebfb 67 // 5.2 While loop in main function**********************************************
fb07 2:45a85caaebfb 68 while (true) { } //Is not used but has to remain in the code!!
fb07 2:45a85caaebfb 69
fb07 2:45a85caaebfb 70 } //Ending of Main() Function