When the SWD turns hard, the tires lock
suguruhamada1003910 opened this issue · comments
When I turned SWD with joycon, the tire of SWD locked. How do I resolve this problem? As for detail, please below.
https://1drv.ms/v/s!AqHxzXmtIbtrqSOsTdOUDimMSkGY?e=BsHu73
rosbag2_2023_02_22-10_41_26.zip
suguru@c-lati7280-076:~$ python3 /opt/ezw/usr/sbin/remote.py swd_left
SYSTEMCTL_dbus.id detected
DBUS Instance : swd_left ..................................................................... [OK]
Node ID : 0x4 .......................................................................... [OK]
RT activated : True ......................................................................... [OK]
CAN device : can0 ......................................................................... [OK]
Vendor-Id : 0x515 ........................................................................ [OK]
Product code : 0x10001 ...................................................................... [OK]
Serial number : 22307SC002A1 ................................................................. [OK]
Revision number : 4 ............................................................................ [OK]
SWVersion : 1.0.1 ........................................................................ [OK]
HWVersion : 3.0.0 ........................................................................ [OK]
Calibrated : True ......................................................................... [OK]
SRDO validity : True ......................................................................... [OK]
NMT state on error : 1 ............................................................................ [OK]
NMT State : OPER ........................................................................ [OK]
PDS State : SWITCH_ON_DISABLED .......................................................... [OK]
NbError : 0 ............................................................................ [OK]
LastError : 0 : Error_reset_or_no_error .................................................. [OK]
SystemError : EZW_PROTECT_NONE EZW_PROTECT_NONE ........................................... [OK]
SSW CAN1 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN2 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN3 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN4 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN5 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN6 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN7 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN8 : False, False, False, False, False, False, False, False ...................... [OK]
SSW SAFEOUT : False, False, False, False, False, False, False, False ...................... [OK]
SCW SAFEIN_1 : True, True, True, True, True, True, True, True .............................. [OK]
Peripheral : True, True, True, False, True, True ......................................... [OK]
VelocityModeSW : internal_limit_active: False ................................................. [OK]
VelocityModeCW : enable_ramp: False, unlock_ramp: False, reference_ramp: False, halt: False ... [OK]
Polarity : velocity_polarity: True, position_polarity: True ............................. [OK]
TargetVelocity : 0 ............................................................................ [OK]
VelocityDemand : 0 ............................................................................ [OK]
VelocityActualValue : 0 ............................................................................ [OK]
PositionValue : -669 ......................................................................... [OK]
OdometryValue : -2189 ........................................................................ [OK]
suguru@c-lati7280-076:~$ python3 /opt/ezw/usr/sbin/remote.py swd_right
SYSTEMCTL_dbus.id detected
DBUS Instance : swd_right .................................................................... [OK]
Node ID : 0x5 .......................................................................... [OK]
RT activated : True ......................................................................... [OK]
CAN device : can0 ......................................................................... [OK]
Vendor-Id : 0x515 ........................................................................ [OK]
Product code : 0x10001 ...................................................................... [OK]
Serial number : 22307SC001A1 ................................................................. [OK]
Revision number : 4 ............................................................................ [OK]
SWVersion : 1.0.1 ........................................................................ [OK]
HWVersion : 3.0.0 ........................................................................ [OK]
Calibrated : True ......................................................................... [OK]
SRDO validity : True ......................................................................... [OK]
NMT state on error : 1 ............................................................................ [OK]
NMT State : OPER ........................................................................ [OK]
PDS State : SWITCH_ON_DISABLED .......................................................... [OK]
NbError : 0 ............................................................................ [OK]
LastError : 0 : Error_reset_or_no_error .................................................. [OK]
SystemError : EZW_PROTECT_NONE EZW_PROTECT_NONE ........................................... [OK]
SSW CAN1 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN2 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN3 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN4 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN5 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN6 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN7 : False, False, False, False, False, False, False, False ...................... [OK]
SSW CAN8 : False, False, False, False, False, False, False, False ...................... [OK]
SSW SAFEOUT : False, False, False, False, False, False, False, False ...................... [OK]
SCW SAFEIN_1 : True, True, False, False, False, False, True, True .......................... [OK]
Peripheral : True, True, True, False, True, True ......................................... [OK]
VelocityModeSW : internal_limit_active: False ................................................. [OK]
VelocityModeCW : enable_ramp: False, unlock_ramp: False, reference_ramp: False, halt: False ... [OK]
Polarity : velocity_polarity: False, position_polarity: False ........................... [OK]
TargetVelocity : 0 ............................................................................ [OK]
VelocityDemand : 0 ............................................................................ [OK]
VelocityActualValue : 0 ............................................................................ [OK]
PositionValue : -580 ......................................................................... [OK]
OdometryValue : -1898 ........................................................................ [OK]
I thought the following codes occurs the problem and I commented them but this problem was not resolved.
648 // Limit to the maximum allowed delta speed
649 if (delta_wheel_speed > CONF_MAX_DELTA_SPEED) {
650 //delta_speed_limit = CONF_MAX_DELTA_SPEED;
651 }
652
653 // If SLS detected, limit to the maximum allowed delta safety limited speed (SLS)
654 if (sls_signal && (delta_wheel_speed > CONF_MAX_DELTA_SPEED_SLS)) {
655 //delta_speed_limit = CONF_MAX_DELTA_SPEED_SLS;
656 }
657
658 // The left and right wheels may have different speeds.
659 // If we need to limit one of them, we need to scale the second wheel speed.
660 // This ensures a delta speed limitation without distorting the target path.
661 if (-1 != delta_speed_limit) {
662 // Get the ratio between the max allowed delta speed limit, and the current delta speed limit.
663 // double delta_speed_ratio = static_cast<double>(delta_speed_limit) / static_cast<double>(delta_wheel_speed);
664
665 // Scale right speed
666 // p_right_speed = static_cast<int32_t>(static_cast<double>(p_right_speed) * delta_speed_ratio);
667
668 // Scale left speed
669 // p_left_speed = static_cast<int32_t>(static_cast<double>(p_left_speed) * delta_speed_ratio);
I checked this behavior again. As a result, this problem is occurred by SE2L. SE2L covered by dust or etc. Therefore, a false detection was occurred and STO was ON.