main_ubi_sdk v 0.1.3
This is UBI4 documentation
multi_motor_controller_hand.h
Go to the documentation of this file.
1/*
2 * multi_motor_controller_h_bridge.h
3 *
4 * Created on: Mar 5, 2025
5 * Author: Andrey Ovodov
6 */
7
8#ifndef MOTORS_CONTROLLERS_HAND_MULTI_MOTOR_CONTROLLER_HAND_H_
9#define MOTORS_CONTROLLERS_HAND_MULTI_MOTOR_CONTROLLER_HAND_H_
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15
17
21
28
34
44
45typedef struct
46{
47
49
52 uint8_t global_force;
53 uint32_t max_current;
57
58
59}__attribute__((__packed__))hand_settings_t;
60
61
62
63#ifdef DRIVE_NUM
64
65typedef struct
66{
67
69
70 hand_mode_enum mode;
71
72 hand_settings_t *settings;
73 uint8_t gesture_num;
74 GesturesCollectionInfo_struct *gesture_collection;
75 UserGesturesInfo_struct *user_gesture_collection;
76
77 uint8_t current_calibrate_finger;
78
79 hand_move_status_enum move_status;
80 open_close_signal_param_struct signal_param_p;
81 bool motor_movement_is_enabled;
82
83 uint8_t finger_calibration_timeout_timer_instance;
84
85 //Functions
86 MultiMotorSelfFunc_t ProcessSignal;
87 MultiMotorSelfFunc_t OpenGesture;
88 MultiMotorSelfFunc_t CloseGesture;
89 MultiMotorSelfFunc_t WiggleMotors;
90 MultiMotorFunc_t SaveDataCallback;
91}multi_motor_controller_hand_t;
92
93
94void MultMotorControllerHandInit(multi_motor_controller_hand_t *self);
95
96#endif
97#ifdef __cplusplus
98}
99#endif
100
101#endif /* MOTORS_CONTROLLERS_HAND_MULTI_MOTOR_CONTROLLER_HAND_H_ */
void(* MultiMotorSelfFunc_t)(void *self)
Definition mult_motor_controller.h:19
void(* MultiMotorFunc_t)(void)
Definition mult_motor_controller.h:20
hand_move_status_enum
Definition multi_motor_controller_hand.h:29
@ HMS_OPEN
Definition multi_motor_controller_hand.h:31
@ HMS_STOP
Definition multi_motor_controller_hand.h:30
@ HMS_CLOSE
Definition multi_motor_controller_hand.h:32
fingers_enum
Definition multi_motor_controller_hand.h:36
@ FE_NUM
Definition multi_motor_controller_hand.h:42
@ FE_PINKIE_FINGER
Definition multi_motor_controller_hand.h:40
@ FE_MIDDLE_FINGER
Definition multi_motor_controller_hand.h:38
@ FE_THUMB_FINGER
Definition multi_motor_controller_hand.h:41
@ FE_INDEX_FINGER
Definition multi_motor_controller_hand.h:37
@ FE_RING_FINGER
Definition multi_motor_controller_hand.h:39
hand_mode_enum
Definition multi_motor_controller_hand.h:22
@ HME_CALIBRATING
Definition multi_motor_controller_hand.h:24
@ HME_CYCLES
Definition multi_motor_controller_hand.h:25
@ HME_NORMAL
Definition multi_motor_controller_hand.h:23
@ HME_BINDING_CONTROL
Definition multi_motor_controller_hand.h:26
Definition multi_motor_controller_hand.h:46
uint8_t global_force
Definition multi_motor_controller_hand.h:52
open_close_threshold_param_struct thresold
Definition multi_motor_controller_hand.h:48
uint32_t max_current
Definition multi_motor_controller_hand.h:53
uint8_t first_finger_channel
Definition multi_motor_controller_hand.h:56
uint8_t hand_control_mode
Definition multi_motor_controller_hand.h:51
uint8_t current_gesture
Definition multi_motor_controller_hand.h:50
uint8_t enable_optic_timer_timeout
Definition multi_motor_controller_hand.h:54
uint8_t enable_optic_selector
Definition multi_motor_controller_hand.h:55
Definition mult_motor_controller.h:26
Definition hand_parameter_description.h:111
Definition hand_parameter_description.h:167