WRS2020用にメカナム台車をROS化

Dependencies:   mbed PID2 JY901 QuaternionMath ros_lib_melodic i2cmaster WRS2020_mecanum_node

Dependents:   WRS2020_mecanum_node

Committer:
sgrsn
Date:
Tue Feb 23 10:22:26 2021 +0000
Revision:
5:17ede03f1fa5
Parent:
0:c177452db984
Lateset commit;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sgrsn 0:c177452db984 1 #ifndef MY_DEFINE_H
sgrsn 0:c177452db984 2 #define MY_DEFINE_H
sgrsn 0:c177452db984 3
sgrsn 0:c177452db984 4 #define PI 3.141592654
sgrsn 0:c177452db984 5
sgrsn 0:c177452db984 6 float DEG_TO_RAD = PI/180.0;
sgrsn 0:c177452db984 7 float RAD_TO_DEG = 180.0/PI;
sgrsn 0:c177452db984 8
sgrsn 0:c177452db984 9 float wheel_d = 0.127; // メカナム直径[mm]
sgrsn 0:c177452db984 10 float wheel_r = 0.0635;
sgrsn 0:c177452db984 11 float deg_per_pulse = 0.0072; // ステッピングモータ(AR46SAK-PS50-1)
sgrsn 0:c177452db984 12
sgrsn 0:c177452db984 13 // 目標位置到達判定
sgrsn 0:c177452db984 14 float threshold_x = 5; //[mm]
sgrsn 0:c177452db984 15 float threshold_y = 5; //[mm]
sgrsn 0:c177452db984 16 float threshold_theta = 1 * DEG_TO_RAD;
sgrsn 0:c177452db984 17
sgrsn 0:c177452db984 18 /*Common for Master and Slave***************/
sgrsn 0:c177452db984 19
sgrsn 0:c177452db984 20 typedef enum
sgrsn 0:c177452db984 21 {
sgrsn 0:c177452db984 22 RightForward = 1,
sgrsn 0:c177452db984 23 LeftForward = 2,
sgrsn 0:c177452db984 24 RightBack = 3,
sgrsn 0:c177452db984 25 LeftBack = 4
sgrsn 0:c177452db984 26 }MotorPosition;
sgrsn 0:c177452db984 27
sgrsn 0:c177452db984 28 typedef enum
sgrsn 0:c177452db984 29 {
sgrsn 0:c177452db984 30 COAST = 0,
sgrsn 0:c177452db984 31 BRAKE = 1,
sgrsn 0:c177452db984 32 CW = 2,
sgrsn 0:c177452db984 33 CCW = 3
sgrsn 0:c177452db984 34 }MotorState;
sgrsn 0:c177452db984 35
sgrsn 0:c177452db984 36 #define WHO_AM_I 0x00
sgrsn 0:c177452db984 37 #define MY_IIC_ADDR 0x01
sgrsn 0:c177452db984 38 #define MOTOR_DIR 0x04
sgrsn 0:c177452db984 39 #define PWM_FREQUENCY 0x05
sgrsn 0:c177452db984 40
sgrsn 0:c177452db984 41
sgrsn 0:c177452db984 42 /*Master only**************************************/
sgrsn 0:c177452db984 43
sgrsn 0:c177452db984 44 #define MOTOR_NUM 4
sgrsn 0:c177452db984 45 #define IIC_ADDR1 0xB0
sgrsn 0:c177452db984 46 #define IIC_ADDR2 0xC0
sgrsn 0:c177452db984 47 #define IIC_ADDR3 0xD0
sgrsn 0:c177452db984 48 #define IIC_ADDR4 0xE0
sgrsn 0:c177452db984 49
sgrsn 0:c177452db984 50 #define MaxFrequency 70000
sgrsn 0:c177452db984 51 #define MinFrequency 0//50
sgrsn 0:c177452db984 52
sgrsn 0:c177452db984 53 // Register Map from PC
sgrsn 0:c177452db984 54 #define MARKER_X 0x05
sgrsn 0:c177452db984 55 #define MARKER_Y 0x06
sgrsn 0:c177452db984 56 #define MARKER_Z 0x07
sgrsn 0:c177452db984 57 #define MARKER_ROLL 0x08
sgrsn 0:c177452db984 58 #define MARKER_PITCH 0x09
sgrsn 0:c177452db984 59 #define MARKER_YAW 0x010
sgrsn 0:c177452db984 60
sgrsn 0:c177452db984 61 #endif