Skip to content

STEP10 controlInterrupt関数のモータオフしきい値、タイヤ角度更新処理の修正 #16

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jun 19, 2023

Conversation

ShotaAk
Copy link

@ShotaAk ShotaAk commented Jun 19, 2023

モータOFF時にタイヤ角度の更新も止める

What does this implement/fix?

controlInterrupt関数の下記の問題を修正します

  • モータをオフする最低速度の単位がm/s と mm/sで整合性取れてない。
    • 「タイヤ速度が0.001を下回ったら走行停止」という処理が書かれているが、タイヤ速度の単位はmm/sのため、cmd_velを極小にしないと走行停止しない
  • 低速時は実機が止まってもjoint_stateは回転し続ける。

修正方法

  • モータをオフする最低速度MIN_SPEEDに統一します。
  • 左右のタイヤ速度がMIN_SPEEDを下回ったらモータをオフし、odomとjointの更新を止めます。

Does this close any currently open issues?

いいえ

How has this been tested?

  • Pi:Coのサンプルを実行し、cmd_velの直進速度が約0.030 m/sを下回るとモータが停止することを確認しました
  • cmd_velを極小にしPi:Co実機が止まると、joint_statesの角度が更新されなくなることを確認しました

Any other comments?

後ほど別PRでファイル名interrupt.inoに修正します。

Checklists

ShotaAk added 2 commits June 19, 2023 11:14
モータOFF時にタイヤ角度の更新も止める
@ShotaAk ShotaAk added the Type: Bug Bug or Bug fixes label Jun 19, 2023
@ShotaAk ShotaAk requested a review from aoki-rt June 19, 2023 02:29
@github-actions
Copy link

Memory usage change @ 6c6dca5

Board flash % RAM for global variables %
esp32:esp32:esp32s3 💚 -160 - 0 -0.01 - 0.0 0 - 0 0.0 - 0.0
Click for full report table
Board uROS_STEP1_LED
flash
% uROS_STEP1_LED
RAM for global variables
% uROS_STEP2_SWITCH
flash
% uROS_STEP2_SWITCH
RAM for global variables
% uROS_STEP3_Buzzer
flash
% uROS_STEP3_Buzzer
RAM for global variables
% uROS_STEP4_Sensor
flash
% uROS_STEP4_Sensor
RAM for global variables
% uROS_STEP5_Straight
flash
% uROS_STEP5_Straight
RAM for global variables
% uROS_STEP6_rotate
flash
% uROS_STEP6_rotate
RAM for global variables
% uROS_STEP7_P_control
flash
% uROS_STEP7_P_control
RAM for global variables
% uROS_STEP8_micromouse
flash
% uROS_STEP8_micromouse
RAM for global variables
% uROS_STEP9_twistMsg
flash
% uROS_STEP9_twistMsg
RAM for global variables
% uROS_STEP10_tfMsg
flash
% uROS_STEP10_tfMsg
RAM for global variables
% uROS_STEP11_SensorMsg
flash
% uROS_STEP11_SensorMsg
RAM for global variables
% uROS_STEP12_micromouse
flash
% uROS_STEP12_micromouse
RAM for global variables
%
esp32:esp32:esp32s3 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 -160 -0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
Click for full report CSV
Board,uROS_STEP1_LED<br>flash,%,uROS_STEP1_LED<br>RAM for global variables,%,uROS_STEP2_SWITCH<br>flash,%,uROS_STEP2_SWITCH<br>RAM for global variables,%,uROS_STEP3_Buzzer<br>flash,%,uROS_STEP3_Buzzer<br>RAM for global variables,%,uROS_STEP4_Sensor<br>flash,%,uROS_STEP4_Sensor<br>RAM for global variables,%,uROS_STEP5_Straight<br>flash,%,uROS_STEP5_Straight<br>RAM for global variables,%,uROS_STEP6_rotate<br>flash,%,uROS_STEP6_rotate<br>RAM for global variables,%,uROS_STEP7_P_control<br>flash,%,uROS_STEP7_P_control<br>RAM for global variables,%,uROS_STEP8_micromouse<br>flash,%,uROS_STEP8_micromouse<br>RAM for global variables,%,uROS_STEP9_twistMsg<br>flash,%,uROS_STEP9_twistMsg<br>RAM for global variables,%,uROS_STEP10_tfMsg<br>flash,%,uROS_STEP10_tfMsg<br>RAM for global variables,%,uROS_STEP11_SensorMsg<br>flash,%,uROS_STEP11_SensorMsg<br>RAM for global variables,%,uROS_STEP12_micromouse<br>flash,%,uROS_STEP12_micromouse<br>RAM for global variables,%
esp32:esp32:esp32s3,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,-160,-0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0

@ShotaAk ShotaAk closed this Jun 19, 2023
@ShotaAk ShotaAk reopened this Jun 19, 2023
@ShotaAk
Copy link
Author

ShotaAk commented Jun 19, 2023

@aoki-rt
さらに提案ですが、

左右のモータ速度がMIN_SPEEDを下回ったら走行停止する(odomとjointの更新を止める)
という仕様にしたらMOTOR_OFF_THRESHOLDが不要になります。

修正版をコミットします。

@github-actions
Copy link

Memory usage change @ 6c6dca5

Board flash % RAM for global variables %
esp32:esp32:esp32s3 💚 -160 - 0 -0.01 - 0.0 0 - 0 0.0 - 0.0
Click for full report table
Board uROS_STEP1_LED
flash
% uROS_STEP1_LED
RAM for global variables
% uROS_STEP2_SWITCH
flash
% uROS_STEP2_SWITCH
RAM for global variables
% uROS_STEP3_Buzzer
flash
% uROS_STEP3_Buzzer
RAM for global variables
% uROS_STEP4_Sensor
flash
% uROS_STEP4_Sensor
RAM for global variables
% uROS_STEP5_Straight
flash
% uROS_STEP5_Straight
RAM for global variables
% uROS_STEP6_rotate
flash
% uROS_STEP6_rotate
RAM for global variables
% uROS_STEP7_P_control
flash
% uROS_STEP7_P_control
RAM for global variables
% uROS_STEP8_micromouse
flash
% uROS_STEP8_micromouse
RAM for global variables
% uROS_STEP9_twistMsg
flash
% uROS_STEP9_twistMsg
RAM for global variables
% uROS_STEP10_tfMsg
flash
% uROS_STEP10_tfMsg
RAM for global variables
% uROS_STEP11_SensorMsg
flash
% uROS_STEP11_SensorMsg
RAM for global variables
% uROS_STEP12_micromouse
flash
% uROS_STEP12_micromouse
RAM for global variables
%
esp32:esp32:esp32s3 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 -160 -0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
Click for full report CSV
Board,uROS_STEP1_LED<br>flash,%,uROS_STEP1_LED<br>RAM for global variables,%,uROS_STEP2_SWITCH<br>flash,%,uROS_STEP2_SWITCH<br>RAM for global variables,%,uROS_STEP3_Buzzer<br>flash,%,uROS_STEP3_Buzzer<br>RAM for global variables,%,uROS_STEP4_Sensor<br>flash,%,uROS_STEP4_Sensor<br>RAM for global variables,%,uROS_STEP5_Straight<br>flash,%,uROS_STEP5_Straight<br>RAM for global variables,%,uROS_STEP6_rotate<br>flash,%,uROS_STEP6_rotate<br>RAM for global variables,%,uROS_STEP7_P_control<br>flash,%,uROS_STEP7_P_control<br>RAM for global variables,%,uROS_STEP8_micromouse<br>flash,%,uROS_STEP8_micromouse<br>RAM for global variables,%,uROS_STEP9_twistMsg<br>flash,%,uROS_STEP9_twistMsg<br>RAM for global variables,%,uROS_STEP10_tfMsg<br>flash,%,uROS_STEP10_tfMsg<br>RAM for global variables,%,uROS_STEP11_SensorMsg<br>flash,%,uROS_STEP11_SensorMsg<br>RAM for global variables,%,uROS_STEP12_micromouse<br>flash,%,uROS_STEP12_micromouse<br>RAM for global variables,%
esp32:esp32:esp32s3,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,-160,-0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0

@ShotaAk
Copy link
Author

ShotaAk commented Jun 19, 2023

最新コミットに合わせて、PRの概要コメントを修正しました

@github-actions
Copy link

Memory usage change @ e897b96

Board flash % RAM for global variables %
esp32:esp32:esp32s3 💚 -164 - 0 -0.01 - 0.0 0 - 0 0.0 - 0.0
Click for full report table
Board uROS_STEP1_LED
flash
% uROS_STEP1_LED
RAM for global variables
% uROS_STEP2_SWITCH
flash
% uROS_STEP2_SWITCH
RAM for global variables
% uROS_STEP3_Buzzer
flash
% uROS_STEP3_Buzzer
RAM for global variables
% uROS_STEP4_Sensor
flash
% uROS_STEP4_Sensor
RAM for global variables
% uROS_STEP5_Straight
flash
% uROS_STEP5_Straight
RAM for global variables
% uROS_STEP6_rotate
flash
% uROS_STEP6_rotate
RAM for global variables
% uROS_STEP7_P_control
flash
% uROS_STEP7_P_control
RAM for global variables
% uROS_STEP8_micromouse
flash
% uROS_STEP8_micromouse
RAM for global variables
% uROS_STEP9_twistMsg
flash
% uROS_STEP9_twistMsg
RAM for global variables
% uROS_STEP10_tfMsg
flash
% uROS_STEP10_tfMsg
RAM for global variables
% uROS_STEP11_SensorMsg
flash
% uROS_STEP11_SensorMsg
RAM for global variables
% uROS_STEP12_micromouse
flash
% uROS_STEP12_micromouse
RAM for global variables
%
esp32:esp32:esp32s3 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 -164 -0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
Click for full report CSV
Board,uROS_STEP1_LED<br>flash,%,uROS_STEP1_LED<br>RAM for global variables,%,uROS_STEP2_SWITCH<br>flash,%,uROS_STEP2_SWITCH<br>RAM for global variables,%,uROS_STEP3_Buzzer<br>flash,%,uROS_STEP3_Buzzer<br>RAM for global variables,%,uROS_STEP4_Sensor<br>flash,%,uROS_STEP4_Sensor<br>RAM for global variables,%,uROS_STEP5_Straight<br>flash,%,uROS_STEP5_Straight<br>RAM for global variables,%,uROS_STEP6_rotate<br>flash,%,uROS_STEP6_rotate<br>RAM for global variables,%,uROS_STEP7_P_control<br>flash,%,uROS_STEP7_P_control<br>RAM for global variables,%,uROS_STEP8_micromouse<br>flash,%,uROS_STEP8_micromouse<br>RAM for global variables,%,uROS_STEP9_twistMsg<br>flash,%,uROS_STEP9_twistMsg<br>RAM for global variables,%,uROS_STEP10_tfMsg<br>flash,%,uROS_STEP10_tfMsg<br>RAM for global variables,%,uROS_STEP11_SensorMsg<br>flash,%,uROS_STEP11_SensorMsg<br>RAM for global variables,%,uROS_STEP12_micromouse<br>flash,%,uROS_STEP12_micromouse<br>RAM for global variables,%
esp32:esp32:esp32s3,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,-164,-0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0

@github-actions
Copy link

Memory usage change @ a80bb79

Board flash % RAM for global variables %
esp32:esp32:esp32s3 💚 -164 - 0 -0.01 - 0.0 0 - 0 0.0 - 0.0
Click for full report table
Board uROS_STEP1_LED
flash
% uROS_STEP1_LED
RAM for global variables
% uROS_STEP2_SWITCH
flash
% uROS_STEP2_SWITCH
RAM for global variables
% uROS_STEP3_Buzzer
flash
% uROS_STEP3_Buzzer
RAM for global variables
% uROS_STEP4_Sensor
flash
% uROS_STEP4_Sensor
RAM for global variables
% uROS_STEP5_Straight
flash
% uROS_STEP5_Straight
RAM for global variables
% uROS_STEP6_rotate
flash
% uROS_STEP6_rotate
RAM for global variables
% uROS_STEP7_P_control
flash
% uROS_STEP7_P_control
RAM for global variables
% uROS_STEP8_micromouse
flash
% uROS_STEP8_micromouse
RAM for global variables
% uROS_STEP9_twistMsg
flash
% uROS_STEP9_twistMsg
RAM for global variables
% uROS_STEP10_tfMsg
flash
% uROS_STEP10_tfMsg
RAM for global variables
% uROS_STEP11_SensorMsg
flash
% uROS_STEP11_SensorMsg
RAM for global variables
% uROS_STEP12_micromouse
flash
% uROS_STEP12_micromouse
RAM for global variables
%
esp32:esp32:esp32s3 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0 -164 -0.01 0 0.0 0 0.0 0 0.0 0 0.0 0 0.0
Click for full report CSV
Board,uROS_STEP1_LED<br>flash,%,uROS_STEP1_LED<br>RAM for global variables,%,uROS_STEP2_SWITCH<br>flash,%,uROS_STEP2_SWITCH<br>RAM for global variables,%,uROS_STEP3_Buzzer<br>flash,%,uROS_STEP3_Buzzer<br>RAM for global variables,%,uROS_STEP4_Sensor<br>flash,%,uROS_STEP4_Sensor<br>RAM for global variables,%,uROS_STEP5_Straight<br>flash,%,uROS_STEP5_Straight<br>RAM for global variables,%,uROS_STEP6_rotate<br>flash,%,uROS_STEP6_rotate<br>RAM for global variables,%,uROS_STEP7_P_control<br>flash,%,uROS_STEP7_P_control<br>RAM for global variables,%,uROS_STEP8_micromouse<br>flash,%,uROS_STEP8_micromouse<br>RAM for global variables,%,uROS_STEP9_twistMsg<br>flash,%,uROS_STEP9_twistMsg<br>RAM for global variables,%,uROS_STEP10_tfMsg<br>flash,%,uROS_STEP10_tfMsg<br>RAM for global variables,%,uROS_STEP11_SensorMsg<br>flash,%,uROS_STEP11_SensorMsg<br>RAM for global variables,%,uROS_STEP12_micromouse<br>flash,%,uROS_STEP12_micromouse<br>RAM for global variables,%
esp32:esp32:esp32s3,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0,-164,-0.01,0,0.0,0,0.0,0,0.0,0,0.0,0,0.0

@aoki-rt
Copy link
Contributor

aoki-rt commented Jun 19, 2023

低速時暴走しないことを確認しました。

@aoki-rt aoki-rt merged commit 39c091f into main Jun 19, 2023
@ShotaAk ShotaAk deleted the fix_step10_interrupt branch June 19, 2023 05:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Bug Bug or Bug fixes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants