]> rtime.felk.cvut.cz Git - eurobot/public.git/commitdiff
joyd: actuators: handling of the joystick buttons changed
authorFilip Jares <filipjares@post.cz>
Mon, 30 Mar 2009 12:32:33 +0000 (14:32 +0200)
committerFilip Jares <filipjares@post.cz>
Mon, 30 Mar 2009 12:32:33 +0000 (14:32 +0200)
src/joyd/joyd.cc
src/robofsm/actuators.h
src/robofsm/robot_orte.c

index eed3dc8db0e7facfb8441731ee3dec582d7eac0d..350e924d91b17e003a3a9e85373cd31f3d38471e 100644 (file)
@@ -61,8 +61,8 @@ static void button_act(char state, int id)
                case BT1:
                        if(state) {
                                //act_chelas(CHELA_LEFT_CLOSE, CHELA_RIGHT_CLOSE);//act ON
-                               act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_OUT, BELTS_OUT, CHELA_TIMEOUT);
-                               printf("Fire button pressed; belt speed set: %d\n", BELTS_OUT);
+                               //act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_OUT, BELTS_OUT, CHELA_TIMEOUT);
+                               //printf("Fire button pressed; belt speed set: %d\n", BELTS_OUT);
                        } else {
                                //act_chelas(CHELA_LEFT_OPEN, CHELA_RIGHT_OPEN);//act OFF
                                //act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_IN, BELTS_IN, 0x1);
@@ -72,8 +72,8 @@ static void button_act(char state, int id)
                case BT2:
                        if(state) {
                                //act_holder(HOLDER_OPENED);//act ON
-                               act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_IN, BELTS_IN, CHELA_TIMEOUT);
-                               printf("Suck button pressed; belt speed set: %d\n", BELTS_IN);
+                               //act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_IN, BELTS_IN, CHELA_TIMEOUT);
+                               //printf("Suck button pressed; belt speed set: %d\n", BELTS_IN);
                        } else {
                                //act_holder(HOLDER_CLOSED);//act OFF
                                //act_picker(CHELA_LEFT_TIGHT, CHELA_RIGHT_TIGHT, BELTS_OUT, BELTS_OUT, 0x1);
@@ -82,7 +82,7 @@ static void button_act(char state, int id)
                        break;
                case BT3:
                        if(state)
-                               act_belts(BELTS_OFF, BELTS_OFF);//act ON
+                               act_belts(BELTS_IN, BELTS_IN);//act ON
                        else
                                act_belts(BELTS_OFF, BELTS_OFF);//act OFF
                        break;
@@ -94,15 +94,15 @@ static void button_act(char state, int id)
                        break;
                case BT5:
                        if(state)
-                               act_belts(BELTS_IN, BELTS_IN);//act ON
+                               act_belts(BELTS_OUT, BELTS_OUT);//act ON
                        else
-                               act_belts(BELTS_IN, BELTS_IN);//act OFF
+                               act_belts(BELTS_OFF, BELTS_OFF);//act OFF
                        break;
                case BT6:
                        if(state)
-                               act_belts(BELTS_OUT, BELTS_OUT);//act ON
+                               ;//act ON
                        else
-                               act_belts(BELTS_OUT, BELTS_OUT);//act OFF
+                               ;//act OFF
                        break;
                case BT7:
                        if(state)
@@ -178,6 +178,7 @@ static void process_button(char state, int id)
        }
        else {
                buttons_prev[id] = 0;
+               button_act(state, id);
        }
 }
 
@@ -255,9 +256,9 @@ int main(int argc, char *argv[])
 
        /* creating publishers */
        robottype_publisher_motion_speed_create(&orte, NULL, &orte);
-       //robottype_publisher_chelas_create(&orte, NULL, &orte);
-       //robottype_publisher_belts_create(&orte, NULL, &orte);
-       robottype_publisher_picker_create(&orte, NULL, &orte);
+       robottype_publisher_chelas_create(&orte, NULL, &orte);
+       robottype_publisher_belts_create(&orte, NULL, &orte);
+       robottype_publisher_picker_create(&orte, NULL, &orte); // FIXME: temporary, should be present only until the LPCs are ready
        
        if(open_joystick(joy_name, &num_of_axis, &num_of_buttons) == -1) {
                printf("Joystick not found, exiting...\n");
index 20d7e3ee07f638ad2dc844f9cafa9421ce0e8b3d..3ca91adf67eab82ea2a1c216b168089ac0724081 100644 (file)
@@ -37,9 +37,9 @@ of the robot.
 #define CHELA_TIMEOUT 0x07
 
 /* Belts */
-#define BELTS_IN 0xFF
-#define BELTS_OFF 0x7F
-#define BELTS_OUT 0x00
+#define BELTS_IN 0xC8  // 200
+#define BELTS_OFF 0x64 // 100
+#define BELTS_OUT 0x00 
 
 /* Positions of lift */
 #define FLOOR1 647
index b34d9281c1a5d81643c2d5d8a0abb754306e2db2..ae70aac91a34a4e3099d2e93fb2f5b3c02da36c7 100644 (file)
@@ -331,8 +331,8 @@ int robot_init_orte()
 
        robottype_publisher_lift_create(&robot.orte, send_dummy_cb, &robot.orte);
        robottype_publisher_pusher_create(&robot.orte, send_dummy_cb, &robot.orte);
-       //robottype_publisher_chelas_create(&robot.orte, send_dummy_cb, &robot.orte);
-       //robottype_publisher_belts_create(&robot.orte, send_dummy_cb, &robot.orte);
+       robottype_publisher_chelas_create(&robot.orte, send_dummy_cb, &robot.orte);
+       robottype_publisher_belts_create(&robot.orte, send_dummy_cb, &robot.orte);
        robottype_publisher_picker_create(&robot.orte, send_dummy_cb, &robot.orte); /* FIXME temporary till LPCs not ready */
        robottype_publisher_holder_create(&robot.orte, send_dummy_cb, &robot.orte);