Last active
August 29, 2015 13:56
-
-
Save treeherder/9317034 to your computer and use it in GitHub Desktop.
Revisions
-
treeherder revised this gist
Mar 4, 2014 . 1 changed file with 2 additions and 2 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -13,14 +13,14 @@ #define C2 A1 static const uint8_t enable(){ digitalWrite(EN1A,HIGH); digitalWrite(EN1B,HIGH); digitalWrite(EN2A,HIGH); digitalWrite(EN2B,HIGH); } static const uint8_t thrust(char* dir){ if(dir=="fwd"){ digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); -
treeherder revised this gist
Mar 4, 2014 . 1 changed file with 24 additions and 20 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -21,26 +21,36 @@ uint8_t enable(){ } uint8_t thrust(char* dir){ if(dir=="fwd"){ digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); } if(dir=="rvs"){ digitalWrite(M1A,LOW); digitalWrite(M1B,LOW); digitalWrite(M2A,HIGH); digitalWrite(M2B,HIGH); } if(dir=="rgt"){ digitalWrite(M1A,LOW); digitalWrite(M1B,LOW); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); } if(dir=="lft"){ digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(M2A,HIGH); digitalWrite(M2B,HIGH); } if(dir=="stp"){ digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left digitalWrite(EN2B,LOW); //brake -roll-to-stop left } } void setup() @@ -86,12 +96,12 @@ uint8_t forward() uint8_t stop() { struct ret ret_val; stp_val = &ret_val; enable(); thrust("stp"); stp_val->c_1 = analogRead(C1); stp_val->c_2 = analogRead(C2); // check current for both wheels return (0); @@ -103,15 +113,9 @@ uint8_t reverse() struct ret ret_val; rvs_val = &ret_val; //right wheel channel 1 enable(); thrust("rvs"); rvs_val->c_1 = analogRead(C1); rvs_val->c_2 = analogRead(C2); // check current for both wheels return (0); -
treeherder revised this gist
Mar 4, 2014 . 1 changed file with 34 additions and 8 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -12,6 +12,37 @@ #define C1 A0 #define C2 A1 uint8_t enable(){ digitalWrite(EN1A,HIGH); digitalWrite(EN1B,HIGH); digitalWrite(EN2A,HIGH); digitalWrite(EN2B,HIGH); } uint8_t thrust(char* dir){ if(dir=="fwd") digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); if(dir=="rvs") digitalWrite(M1A,LOW); digitalWrite(M1B,LOW); digitalWrite(M2A,HIGH); digitalWrite(M2B,HIGH); if(dir=="rgt") digitalWrite(M1A,LOW); digitalWrite(M1B,LOW); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); if(dir=="lft") digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(M2A,HIGH); digitalWrite(M2B,HIGH); } void setup() { @@ -42,16 +73,11 @@ static struct ret *rvs_val; uint8_t forward() { enable(); thrust("fwd"); struct ret ret_val; fwd_val = &ret_val; fwd_val->c_1 = analogRead(C1); fwd_val->c_2 = analogRead(C2); // check current for both wheels -
treeherder revised this gist
Mar 4, 2014 . 1 changed file with 8 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -36,11 +36,13 @@ struct ret //quadrature encoder data can come in here //accelerometer data? }; static struct ret *fwd_val; static struct ret *stp_val; static struct ret *rvs_val; uint8_t forward() { struct ret ret_val; fwd_val = &ret_val; digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 @@ -52,15 +54,13 @@ uint8_t forward() digitalWrite(EN2B,HIGH); //left enable channel 2 fwd_val->c_1 = analogRead(C1); fwd_val->c_2 = analogRead(C2); // check current for both wheels return (0); } uint8_t stop() { struct ret ret_val; stp_val = &ret_val; digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right @@ -75,7 +75,6 @@ uint8_t stop() uint8_t reverse() { struct ret ret_val; rvs_val = &ret_val; //right wheel channel 1 digitalWrite(M1B,LOW); //right wheel channel 2 @@ -96,5 +95,9 @@ void loop() { forward(); Serial.print("C_2 "); Serial.print(fwd_val->c_1); Serial.print("C_1"); Serial.print(fwd_val->c_2); } -
treeherder revised this gist
Mar 4, 2014 . 1 changed file with 38 additions and 32 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -27,18 +27,21 @@ void setup() Serial.begin(9600); } struct ret { uint8_t c_1; //current one uint8_t c_2; //current two //quadrature encoder data can come in here //accelerometer data? }; uint8_t forward() { struct ret ret_val; static struct ret *fwd_val; fwd_val = &ret_val; digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 @@ -47,48 +50,51 @@ uint32_t forward(current *curr) digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 fwd_val->c_1 = analogRead(C1); fwd_val->c_2 = analogRead(C2); // check current for both wheels Serial.println("C_2 %d C_1 %d8", fwd_val->c_1, fwd_val->c_2); // print the relevant information return (0); } uint8_t stop() { struct ret ret_val; static struct ret *stp_val; stp_val = &ret_val; digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left digitalWrite(EN2B,LOW); //brake -roll-to-stop left stp_val->c_1 = analogRead(C1); stp_val->c_2 = analogRead(C2); // check current for both wheels return (0); } uint8_t reverse() { struct ret ret_val; static struct ret *rvs_val; rvs_val = &ret_val; //right wheel channel 1 digitalWrite(M1B,LOW); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 digitalWrite(M2A,HIGH); //left wheel channel 1 digitalWrite(M2B,HIGH); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 Serial.println(analogRead(C1)); // check current for right wheel Serial.println(analogRead(C2)); // check current for left wheel rvs_val->c_1 = analogRead(C1); rvs_val->c_2 = analogRead(C2); // check current for both wheels return (0); } void loop() { forward(); } -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 14 additions and 9 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -47,28 +47,26 @@ uint32_t forward(current *curr) digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 curr->c_1 = analogRead(C1); curr->c_2 = analogRead(C2); // check current for both wheels return (0); } uint32_t stop(current *curr) { digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left digitalWrite(EN2B,LOW); //brake -roll-to-stop left curr->c_1 = analogRead(C1); curr->c_2 = analogRead(C2); // check current for both wheels return (0); } uint32_t reverse(current *curr) { //right wheel channel 1 digitalWrite(M1B,LOW); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 @@ -78,12 +76,19 @@ uint32_t reverse(current *curr) digitalWrite(EN2B,HIGH); //left enable channel 2 Serial.println(analogRead(C1)); // check current for right wheel Serial.println(analogRead(C2)); // check current for left wheel curr->c_1 = analogRead(C1); curr->c_2 = analogRead(C2); // check current for both wheels return (0); } current moment; // a global scope for current sensor info void loop() { forward(&moment); Serial.print("C_1 %d", moment->c_1); Serial.print("C_2 %d", moment->c_2); // print the relevant information } -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 1 addition and 4 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -54,8 +54,7 @@ uint32_t forward(current *curr) uint32_t stop(current *curr) { digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left @@ -68,8 +67,6 @@ uint32_t stop(current *curr) uint32_t reverse(current *curr) { digitalWrite(M1A,LOW); //right wheel channel 1 digitalWrite(M1B,LOW); //right wheel channel 2 -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 6 additions and 8 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -39,8 +39,6 @@ struct return_data uint32_t forward(current *curr) { digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 @@ -49,8 +47,8 @@ uint32_t forward(current *curr) digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 curr -> c_1 = analogRead(C1); curr -> c_2 = analogRead(C2); // check current for both wheels return (0); } @@ -62,8 +60,8 @@ uint32_t stop(current *curr) digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left digitalWrite(EN2B,LOW); //brake -roll-to-stop left curr -> c_1 = analogRead(C1); curr -> c_2 = analogRead(C2); // check current for both wheels return (0); } @@ -83,8 +81,8 @@ uint32_t reverse(current *curr) digitalWrite(EN2B,HIGH); //left enable channel 2 Serial.println(analogRead(C1)); // check current for right wheel Serial.println(analogRead(C2)); // check current for left wheel curr -> c_1 = analogRead(C1); curr -> c_2 = analogRead(C2); // check current for both wheels return (0); } -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 77 additions and 11 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,31 @@ #include <stdint.h> #define EN1A 9 #define M1A 8 #define EN1B 3 #define M1B 2 #define EN2A 4 #define M2A 5 #define EN2B 7 #define M2B 6 #define C1 A0 #define C2 A1 void setup() { pinMode(EN1A,OUTPUT); pinMode( M1A,OUTPUT); pinMode(EN1B,OUTPUT); pinMode( M1B,OUTPUT); pinMode(EN2A,OUTPUT); pinMode( M2A,OUTPUT); pinMode(EN2B,OUTPUT); pinMode( M2B,OUTPUT); Serial.begin(9600); } typedef struct return_data current; @@ -14,15 +42,53 @@ uint32_t forward(current *curr) uint32_t _c1 = 1; uint32_t _c2 = 1; digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 digitalWrite(M2A,LOW); //left wheel channel 1 digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 curr -> analogRead(C1) = _c1; curr -> analogRead(C2) = _c2; // check current for both wheels return (0); } uint32_t stop(current *curr) { uint32_t _c1 = 1; uint32_t _c2 = 1; digitalWrite(EN1A,LOW); //brake -roll-to-stop digitalWrite(EN1B,LOW); //brake -roll-to-stop right digitalWrite(EN2A,LOW); //brake -roll-to-stop left digitalWrite(EN2B,LOW); //brake -roll-to-stop left curr -> analogRead(C1) = _c1; curr -> analogRead(C2) = _c2; // check current for both wheels return (0); } uint32_t reverse(current *curr) { uint32_t _c1 = 1; uint32_t _c2 = 1; digitalWrite(M1A,LOW); //right wheel channel 1 digitalWrite(M1B,LOW); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 digitalWrite(M2A,HIGH); //left wheel channel 1 digitalWrite(M2B,HIGH); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 Serial.println(analogRead(C1)); // check current for right wheel Serial.println(analogRead(C2)); // check current for left wheel curr -> analogRead(C1) = _c1; curr -> analogRead(C2) = _c2; // check current for both wheels return (0); } void loop() { } -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 17 additions and 17 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,4 @@ typedef struct return_data current; struct return_data @@ -8,21 +9,20 @@ struct return_data //accelerometer data? }; uint32_t forward(current *curr) { uint32_t _c1 = 1; uint32_t _c2 = 1; digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 digitalWrite(M2A,LOW); //left wheel channel 1 digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 curr -> analogRead(C1) = _c1; curr -> analogRead(C2) = _c2; // check current for both wheels return (0); }
-
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 4 additions and 5 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,5 +1,4 @@ typedef struct return_data current; struct return_data { @@ -23,7 +22,7 @@ digitalWrite(M2A,LOW); //left wheel channel 1 digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 curr -> analogRead(C1) = _c1; curr -> analogRead(C2) = _c2; // check current for both wheels return (0); } -
treeherder revised this gist
Mar 3, 2014 . 1 changed file with 26 additions and 84 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,87 +1,29 @@ typedef struct return_data curr; struct return_data { uint32_t c_1; //current one uint32_t c_2; //current two //quadrature encoder data can come in here //accelerometer data? }; uint32_t forward(return_data *curr) { uint32_t _c1; uint32_t _c2; _c1 = 1; _c2 = 1; digitalWrite(M1A,HIGH); //right wheel channel 1 digitalWrite(M1B,HIGH); //right wheel channel 2 digitalWrite(EN1A,HIGH); //right enable channel 1 digitalWrite(EN1B,HIGH); //right enable channel 2 digitalWrite(M2A,LOW); //left wheel channel 1 digitalWrite(M2B,LOW); //left wheel channel 2 digitalWrite(EN2A,HIGH); //left enable channel 1 digitalWrite(EN2B,HIGH); //left enable channel 2 analogRead(C1) -> _c1; analogRead(C2) -> _c2; // check current for both wheels return (0); } -
treeherder created this gist
Mar 3, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,87 @@ #define EN1A 9 #define M1A 8 #define EN1B 3 #define M1B 2 #define EN2A 4 #define M2A 5 #define EN2B 7 #define M2B 6 #define C1 A0 #define C2 A1 void setup() { pinMode(EN1A,OUTPUT); pinMode( M1A,OUTPUT); pinMode(EN1B,OUTPUT); pinMode( M1B,OUTPUT); pinMode(EN2A,OUTPUT); pinMode( M2A,OUTPUT); pinMode(EN2B,OUTPUT); pinMode( M2B,OUTPUT); Serial.begin(9600); //moving the wheel A Serial.println("Moving Wheel A, M1A H, M1B L"); digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(EN1A,HIGH); digitalWrite(EN1B,HIGH); Serial.println(analogRead(C1)); delay(500); digitalWrite(EN1A,LOW); digitalWrite(EN1B,LOW); delay(500); Serial.println("Moving Wheel A, M1A L, M1B H"); digitalWrite(M1A,HIGH); digitalWrite(M1B,HIGH); digitalWrite(EN1A,HIGH); digitalWrite(EN1B,HIGH); Serial.println(analogRead(C1)); delay(500); digitalWrite(EN1A,LOW); digitalWrite(EN1B,LOW); digitalWrite(M1A,LOW); digitalWrite(M1B,LOW); delay(500); //finish test for wheel A //moving the wheel B Serial.println("Moving Wheel B, M2A H, M2B L"); digitalWrite(M2A,HIGH); digitalWrite(M2B,HIGH); digitalWrite(EN2A,HIGH); digitalWrite(EN2B,HIGH); Serial.println(analogRead(C2)); delay(500); digitalWrite(EN2A,LOW); digitalWrite(EN2B,LOW); delay(500); Serial.println("Moving Wheel A, M2A L, M2B H"); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); digitalWrite(EN2A,HIGH); digitalWrite(EN2B,HIGH); Serial.println(analogRead(C2)); delay(500); digitalWrite(EN2A,LOW); digitalWrite(EN2B,LOW); digitalWrite(M2A,LOW); digitalWrite(M2B,LOW); delay(500); //finish test for wheel B } void loop() { delay(1000); }