funzionamento un motore
Dependencies: X_NUCLEO_IHM01A1 mbed Motori_ultrasuoni_prova
Fork of HelloWorld_IHM01A1_2Motors by
Revision 30:f3d8978c68d4, committed 2017-03-13
- Comitter:
- Wonderjack996
- Date:
- Mon Mar 13 16:07:17 2017 +0000
- Parent:
- 29:526970c1d998
- Child:
- 31:1a64d3e86c03
- Commit message:
- motore
Changed in this revision
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Fri Mar 10 14:23:19 2017 +0000
+++ b/main.cpp Mon Mar 13 16:07:17 2017 +0000
@@ -91,214 +91,10 @@
if (motor2->init() != COMPONENT_OK) {
exit(EXIT_FAILURE);
}
-
- /* Printing to the console. */
- printf("Motor Control Application Example for 2 Motors\r\n\n");
-
-
- /*----- Moving. -----*/
-
- /* Printing to the console. */
- printf("--> Moving forward: M1 %d steps, M2 %d steps.\r\n", STEPS >> 1, STEPS);
-
- /* Moving N steps in the forward direction. */
- motor1->move(StepperMotor::FWD, STEPS >> 1);
- motor2->move(StepperMotor::FWD, STEPS);
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Getting current position. */
- int position1 = motor1->get_position();
- int position2 = motor2->get_position();
- /* Printing to the console. */
- printf(" Position: M1 %d, M2 %d.\r\n", position1, position2);
-
- /* Waiting 2 seconds. */
- wait_ms(DELAY_1);
-
-
- /*----- Moving. -----*/
-
- /* Printing to the console. */
- printf("--> Moving backward: M1 %d steps, M2 %d steps.\r\n", STEPS >> 1, STEPS);
-
-
- /* Moving N steps in the backward direction. */
- motor1->move(StepperMotor::BWD, STEPS >> 1);
- motor2->move(StepperMotor::BWD, STEPS);
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Getting current position. */
- position1 = motor1->get_position();
- position2 = motor2->get_position();
-
- /* Printing to the console. */
- printf(" Position: M1 %d, M2 %d.\r\n", position1, position2);
- printf("--> Setting Home.\r\n");
-
- /* Setting the current position to be the home position. */
- motor1->set_home();
- motor2->set_home();
-
- /* Waiting 2 seconds. */
- wait_ms(DELAY_1);
-
-
- /*----- Going to a specified position. -----*/
-
- /* Printing to the console. */
- printf("--> Going to position: M1 %d, M2 %d.\r\n", STEPS, STEPS >> 1);
-
- /* Requesting to go to a specified position. */
- motor1->go_to(STEPS);
- motor2->go_to(STEPS >> 1);
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Getting current position. */
- position1 = motor1->get_position();
- position2 = motor2->get_position();
-
- /* Printing to the console. */
- printf(" Position: M1 %d, M2 %d.\r\n", position1, position2);
-
- /* Waiting 2 seconds. */
- wait_ms(DELAY_1);
-
-
- /*----- Going Home. -----*/
-
- /* Printing to the console. */
- printf("--> Going Home.\r\n");
-
- /* Requesting to go to home. */
- motor1->go_home();
- motor2->go_home();
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Getting current position. */
- position1 = motor1->get_position();
- position2 = motor2->get_position();
-
- /* Printing to the console. */
- printf(" Position: M1 %d, M2 %d.\r\n", position1, position2);
-
- /* Waiting 2 seconds. */
- wait_ms(DELAY_1);
-
-
- /*----- Running. -----*/
-
- /* Printing to the console. */
- printf("--> M1 running backward, M2 running forward.\r\n");
-
- /* Requesting to run backward. */
- motor1->run(StepperMotor::BWD);
- motor2->run(StepperMotor::FWD);
-
- /* Waiting until delay has expired. */
- wait_ms(DELAY_2);
-
- /* Getting current speed. */
- int speed1 = motor1->get_speed();
- int speed2 = motor2->get_speed();
-
- /* Printing to the console. */
- printf(" Speed: M1 %d, M2 %d.\r\n", speed1, speed2);
-
- /*----- Increasing the speed while running. -----*/
-
- /* Printing to the console. */
- printf("--> Increasing the speed while running.\r\n");
-
- /* Increasing the speed. */
- motor1->set_max_speed(SPEED_1);
- motor2->set_max_speed(SPEED_1);
-
- /* Waiting until delay has expired. */
- wait_ms(DELAY_2);
-
- /* Getting current speed. */
- speed1 = motor1->get_speed();
- speed2 = motor2->get_speed();
-
- /* Printing to the console. */
- printf(" Speed: M1 %d, M2 %d.\r\n", speed1, speed2);
-
-
- /*----- Decreasing the speed while running. -----*/
-
- /* Printing to the console. */
- printf("--> Decreasing the speed while running.\r\n");
-
- /* Decreasing the speed. */
- motor1->set_max_speed(SPEED_2);
- motor2->set_max_speed(SPEED_2);
-
- /* Waiting until delay has expired. */
- wait_ms(DELAY_3);
-
- /* Getting current speed. */
- speed1 = motor1->get_speed();
- speed2 = motor2->get_speed();
-
- /* Printing to the console. */
- printf(" Speed: M1 %d, M2 %d.\r\n", speed1, speed2);
-
-
- /*----- Requiring hard-stop while running. -----*/
-
- /* Printing to the console. */
- printf("--> Requiring hard-stop while running.\r\n");
-
- /* Requesting to immediatly stop. */
- motor1->hard_stop();
- motor2->hard_stop();
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Waiting 2 seconds. */
- wait_ms(DELAY_1);
-
-
- /*----- Infinite Loop. -----*/
-
- /* Printing to the console. */
- printf("--> Infinite Loop...\r\n");
-
- /* Setting the current position to be the home position. */
- motor1->set_home();
- motor2->set_home();
-
- /* Infinite Loop. */
- while(true) {
- /* Requesting to go to a specified position. */
- motor1->go_to(STEPS >> 1);
- motor2->go_to(- (STEPS >> 1));
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
-
- /* Requesting to go to a specified position. */
- motor1->go_to(- (STEPS >> 1));
- motor2->go_to(STEPS >> 1);
-
- /* Waiting while the motor is active. */
- motor1->wait_while_active();
- motor2->wait_while_active();
+ while(true){
+ /* Moving N steps in the forward direction. */
+ motor1->run(StepperMotor::FWD);
+ //motor2->run(StepperMotor::FWD);
}
}
