Skip to content

Commit 4a8e9ce

Browse files
committed
Finalising application.
1 parent 33437a5 commit 4a8e9ce

File tree

2 files changed

+73
-56
lines changed

2 files changed

+73
-56
lines changed

examples/Controlling_Manually_Braccio/AppState.cpp

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,21 +53,25 @@ State * ShoulderState::handle_OnEnter()
5353

5454
State * ShoulderState::handle_OnUp()
5555
{
56+
shoulder.move().to(shoulder.position() + 5.0f);
5657
return this;
5758
}
5859

5960
State * ShoulderState::handle_OnDown()
6061
{
62+
shoulder.move().to(shoulder.position() - 5.0f);
6163
return this;
6264
}
6365

6466
State * ShoulderState::handle_OnLeft()
6567
{
68+
base.move().to(base.position() + 5.0f);
6669
return this;
6770
}
6871

6972
State * ShoulderState::handle_OnRight()
7073
{
74+
base.move().to(base.position() - 5.0f);
7175
return this;
7276
}
7377

@@ -99,11 +103,13 @@ State * ElbowState::handle_OnEnter()
99103

100104
State * ElbowState::handle_OnUp()
101105
{
106+
elbow.move().to(elbow.position() + 5.0f);
102107
return this;
103108
}
104109

105110
State * ElbowState::handle_OnDown()
106111
{
112+
elbow.move().to(elbow.position() - 5.0f);
107113
return this;
108114
}
109115

@@ -125,21 +131,25 @@ State * WristState::handle_OnEnter()
125131

126132
State * WristState::handle_OnUp()
127133
{
134+
wristRoll.move().to(wristRoll.position() + 5.0f);
128135
return this;
129136
}
130137

131138
State * WristState::handle_OnDown()
132139
{
140+
wristRoll.move().to(wristRoll.position() - 5.0f);
133141
return this;
134142
}
135143

136144
State * WristState::handle_OnLeft()
137145
{
146+
wristPitch.move().to(wristPitch.position() + 5.0f);
138147
return this;
139148
}
140149

141150
State * WristState::handle_OnRight()
142151
{
152+
wristPitch.move().to(wristPitch.position() - 5.0f);
143153
return this;
144154
}
145155

@@ -171,12 +181,12 @@ State * PinchState::handle_OnEnter()
171181

172182
State * PinchState::handle_OnLeft()
173183
{
174-
gripper.move().to(gripper.position() + 2.5f);
184+
gripper.move().to(gripper.position() + 5.0f);
175185
return this;
176186
}
177187

178188
State * PinchState::handle_OnRight()
179189
{
180-
gripper.move().to(gripper.position() - 2.5f);
190+
gripper.move().to(gripper.position() - 5.0f);
181191
return this;
182192
}

examples/Controlling_Manually_Braccio/Controlling_Manually_Braccio.ino

Lines changed: 61 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010
* DEFINES
1111
**************************************************************************************/
1212

13-
// Colors
1413
#define COLOR_TEAL 0x00878F
1514
#define COLOR_LIGHT_TEAL 0x62AEB2
1615
#define COLOR_YELLOW 0xE5AD24
@@ -27,66 +26,27 @@ enum BUTTONS {
2726
BTN_RIGHT = 5,
2827
};
2928

30-
static const char *direction_btnm_map[] = {" ", LV_SYMBOL_UP, " ", "\n",
31-
LV_SYMBOL_LEFT, " ", LV_SYMBOL_RIGHT, "\n",
32-
" ", LV_SYMBOL_DOWN, " ", "\0"};
33-
3429
/**************************************************************************************
35-
* GLOBAL VARIABLES
30+
* CONSTANTS
3631
**************************************************************************************/
3732

38-
// Variables
3933
static float const HOME_POS[6] = {157.5, 157.5, 157.5, 157.5, 157.5, 90.0};
34+
static const char *DIRECTION_BTNM_MAP[] = {" ", LV_SYMBOL_UP, " ", "\n",
35+
LV_SYMBOL_LEFT, " ", LV_SYMBOL_RIGHT, "\n",
36+
" ", LV_SYMBOL_DOWN, " ", "\0"};
4037

41-
lv_obj_t * direction_btnm; // Direction button matrix
42-
lv_obj_t * label; // Label
43-
44-
ManualControlApp app;
45-
46-
// Screens functions
47-
48-
void directionScreen(void)
49-
{
50-
Braccio.lvgl_lock();
51-
52-
static lv_style_t style_bg;
53-
lv_style_init(&style_bg);
54-
lv_style_set_bg_color(&style_bg, lv_color_white());
55-
56-
static lv_style_t style_btn;
57-
lv_style_init(&style_btn);
58-
lv_style_set_bg_color(&style_btn, lv_color_hex(COLOR_LIGHT_TEAL));
59-
lv_style_set_text_color(&style_btn, lv_color_white());
60-
61-
direction_btnm = lv_btnmatrix_create(lv_scr_act());
62-
lv_obj_set_size(direction_btnm, 240, 240);
63-
lv_btnmatrix_set_map(direction_btnm, direction_btnm_map);
64-
lv_obj_align(direction_btnm, LV_ALIGN_CENTER, 0, 0);
65-
66-
lv_obj_add_style(direction_btnm, &style_bg, 0);
67-
lv_obj_add_style(direction_btnm, &style_btn, LV_PART_ITEMS);
38+
/**************************************************************************************
39+
* GLOBAL VARIABLES
40+
**************************************************************************************/
6841

69-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 0, LV_BTNMATRIX_CTRL_HIDDEN);
70-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 1, LV_BTNMATRIX_CTRL_DISABLED);
71-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 2, LV_BTNMATRIX_CTRL_HIDDEN);
72-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 3, LV_BTNMATRIX_CTRL_DISABLED);
73-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 4, LV_BTNMATRIX_CTRL_HIDDEN);
74-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 5, LV_BTNMATRIX_CTRL_DISABLED);
75-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 6, LV_BTNMATRIX_CTRL_HIDDEN);
76-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 7, LV_BTNMATRIX_CTRL_DISABLED);
77-
lv_btnmatrix_set_btn_ctrl(direction_btnm, 8, LV_BTNMATRIX_CTRL_HIDDEN);
42+
lv_obj_t * direction_btnm;
43+
lv_obj_t * label;
7844

79-
lv_btnmatrix_set_one_checked(direction_btnm, true);
80-
lv_btnmatrix_set_selected_btn(direction_btnm, 1);
45+
ManualControlApp app;
8146

82-
label = lv_label_create(lv_scr_act());
83-
lv_obj_set_width(label, 240);
84-
lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0);
85-
lv_obj_align(label, LV_ALIGN_CENTER, 0, 0);
86-
lv_label_set_text(label, "");
87-
88-
Braccio.lvgl_unlock();
89-
}
47+
/**************************************************************************************
48+
* SETUP/LOOP
49+
**************************************************************************************/
9050

9151
void setup()
9252
{
@@ -95,7 +55,7 @@ void setup()
9555
if (Braccio.begin(directionScreen))
9656
{
9757
/* Configure Braccio. */
98-
Braccio.speed(MEDIUM);
58+
Braccio.speed(speed_grade_t(150)/*MEDIUM*/);
9959
/* Move to home position. */
10060
Braccio.moveTo(HOME_POS[0], HOME_POS[1], HOME_POS[2], HOME_POS[3], HOME_POS[4], HOME_POS[5]);
10161
delay(500);
@@ -144,6 +104,53 @@ void loop()
144104
}
145105
}
146106

107+
/**************************************************************************************
108+
* FUNCTIONS
109+
**************************************************************************************/
110+
111+
void directionScreen(void)
112+
{
113+
Braccio.lvgl_lock();
114+
115+
static lv_style_t style_bg;
116+
lv_style_init(&style_bg);
117+
lv_style_set_bg_color(&style_bg, lv_color_white());
118+
119+
static lv_style_t style_btn;
120+
lv_style_init(&style_btn);
121+
lv_style_set_bg_color(&style_btn, lv_color_hex(COLOR_LIGHT_TEAL));
122+
lv_style_set_text_color(&style_btn, lv_color_white());
123+
124+
direction_btnm = lv_btnmatrix_create(lv_scr_act());
125+
lv_obj_set_size(direction_btnm, 240, 240);
126+
lv_btnmatrix_set_map(direction_btnm, DIRECTION_BTNM_MAP);
127+
lv_obj_align(direction_btnm, LV_ALIGN_CENTER, 0, 0);
128+
129+
lv_obj_add_style(direction_btnm, &style_bg, 0);
130+
lv_obj_add_style(direction_btnm, &style_btn, LV_PART_ITEMS);
131+
132+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 0, LV_BTNMATRIX_CTRL_HIDDEN);
133+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 1, LV_BTNMATRIX_CTRL_DISABLED);
134+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 2, LV_BTNMATRIX_CTRL_HIDDEN);
135+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 3, LV_BTNMATRIX_CTRL_DISABLED);
136+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 4, LV_BTNMATRIX_CTRL_HIDDEN);
137+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 5, LV_BTNMATRIX_CTRL_DISABLED);
138+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 6, LV_BTNMATRIX_CTRL_HIDDEN);
139+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 7, LV_BTNMATRIX_CTRL_DISABLED);
140+
lv_btnmatrix_set_btn_ctrl(direction_btnm, 8, LV_BTNMATRIX_CTRL_HIDDEN);
141+
142+
lv_btnmatrix_set_one_checked(direction_btnm, true);
143+
lv_btnmatrix_set_selected_btn(direction_btnm, 1);
144+
145+
label = lv_label_create(lv_scr_act());
146+
lv_obj_set_width(label, 240);
147+
lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, 0);
148+
lv_obj_align(label, LV_ALIGN_CENTER, 0, 0);
149+
lv_label_set_text(label, "");
150+
151+
Braccio.lvgl_unlock();
152+
}
153+
147154
void handle_ButtonPressedReleased()
148155
{
149156
/* ENTER */

0 commit comments

Comments
 (0)