Advertisement
2018botball

Will Backhair

Apr 10th, 2015
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.21 KB | None | 0 0
  1. // Created on Mon April 6 2015
  2. //Blessed by the KaiserBeckerChan~ Himself!!!
  3.  
  4. //Touch Sensors
  5. #define button 15
  6. //Motor
  7. #define RIGHTWHEEL 2
  8. #define LEFTWHEEL 0
  9. //Servo
  10. #define SORTER 3
  11. //Channel
  12. #define RED 0
  13. #define GREEN 1
  14.  
  15. const int SORTER_NEUTRAL_SERVO = 850;
  16. const int SORTER_RED_SERVO = 1550;
  17. const int SORTER_GREEN_SERVO = 230;
  18. const int left_speed = 100;
  19. const int right_speed = 100;
  20. const int left_rotation_speed = 800;
  21. const int right_rotation_speed = 200;
  22.  
  23. void setup();
  24. void movearound(int speed, int millis);
  25. void stop();
  26. void servo_sort();
  27. void leaf_green();
  28. void fire_red();
  29. void green_sort(int pos);
  30. void red_sort(int pos);
  31. void rotation(int left_rotation_speed, int right_rotation_speed);
  32. void camera_four();
  33. void button_change(int speed);
  34. void drive_direct(int left_speed, int right_speed);
  35. void movement();
  36.  
  37. int main()
  38. {
  39. printf("WundurBar Herr KaiserBeckerChan~ ~Please Bless Us~\n");
  40. setup();
  41. thread life;
  42. life = thread_create(movement);
  43. thread_start(life);
  44. for(;;){
  45. movearound(100, 3000);
  46. }
  47. for(;;){
  48. printf("Test2\n");
  49. servo_sort();
  50. }
  51.  
  52. return 0;
  53. }
  54.  
  55. void setup()
  56. {
  57. printf("Time to have fun\n");
  58. enable_servo(SORTER);
  59. printf("Test3\n");
  60. clear_motor_position_counter(RIGHTWHEEL);
  61. clear_motor_position_counter(LEFTWHEEL);
  62. camera_open_at_res(LOW_RES);
  63. printf("Test4\n");
  64. }
  65.  
  66. void servo_sort(){
  67. set_servo_position(SORTER, SORTER_NEUTRAL_SERVO);
  68. int counter = 0;
  69. for(;;)
  70. {
  71.  
  72. if(counter == 3){
  73. //tap_funnel();
  74. //counter = 0;
  75. }
  76. camera_four();
  77. printf("Test15\n");
  78. if(get_object_area(RED,0) > get_object_area(GREEN,0) && get_object_area(RED,0) > 100){
  79. red_sort(SORTER_RED_SERVO);
  80. msleep(250);
  81. }
  82.  
  83. if(get_object_area(GREEN,0) > get_object_area(RED,0) && get_object_area(GREEN,0) > 100){
  84. green_sort(SORTER_GREEN_SERVO);
  85. msleep(250);
  86. }
  87.  
  88. if(get_object_area(RED,0) > 100 && get_object_area(GREEN,0) >1000){
  89. //clear_sort_v1();
  90. //msleep(250);
  91. }
  92.  
  93. if(get_object_area(RED,0) && (get_object_area(GREEN,0) == 0)){
  94.  
  95. //tap_funnel();
  96. }
  97. msleep(10);
  98. }
  99. }
  100.  
  101. void red_sort(int pos)
  102. {
  103. set_servo_position(3, pos);
  104. msleep(250);
  105. set_servo_position(3, SORTER_NEUTRAL_SERVO);
  106. }
  107.  
  108. void green_sort(int pos)
  109. {
  110. set_servo_position(3, pos);
  111. msleep(250);
  112. set_servo_position(3, SORTER_NEUTRAL_SERVO);
  113. }
  114.  
  115. void camera_four()
  116. {
  117. camera_update();
  118. camera_update();
  119. camera_update();
  120. camera_update();
  121. }
  122.  
  123. void stop(){
  124. drive_direct(0,0);
  125. }
  126.  
  127. void drive_direct(int left_speed, int right_speed)
  128. {
  129. //stablizing the movement of the robot(potenally fixed w/ software)
  130. motor(RIGHTWHEEL, right_speed);
  131. motor(LEFTWHEEL, left_speed);
  132. }
  133.  
  134. void movearound(int speed, int millis){
  135. //driving
  136. printf("Test5\n");
  137. drive_direct(speed, speed);
  138. printf("Test6\n");
  139. msleep(millis);
  140. printf("Test7\n");
  141. rotation(left_rotation_speed, right_rotation_speed);
  142. printf("Test8\n");
  143. msleep(millis);
  144. }
  145.  
  146. void rotation(int left_rotation_speed, int right_rotation_speed){
  147. printf("Test9\n");
  148. drive_direct(left_rotation_speed, right_rotation_speed);
  149. printf("Test10\n");
  150. msleep(100);
  151. }
  152.  
  153. void movement(){
  154. movearound(100, 3000);
  155. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement