Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
「人生を制御するルーレット」は何制御と言えるのか? at 制御工学勉強会(2025/09/06)
Search
ktetsuo
September 06, 2025
0
36
「人生を制御するルーレット」は何制御と言えるのか? at 制御工学勉強会(2025/09/06)
制御ガチ勢の皆さんにお伺いした結果、「MPC(モデル予測制御)」が有力のようでした。ありがとうございました!
ktetsuo
September 06, 2025
Tweet
Share
More Decks by ktetsuo
See All by ktetsuo
20240420_あまーい話_unagipy
ktetsuo
0
75
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.3k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
28
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Designing Powerful Visuals for Engaging Learning
tmiket
0
190
How to build a perfect <img>
jonoalderson
0
4.7k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.3k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
70
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
0
170
Technical Leadership for Architectural Decision Making
baasie
0
190
We Are The Robots
honzajavorek
0
120
The SEO Collaboration Effect
kristinabergwall1
0
310
Transcript
「人生を制御するルーレット」 は何制御と言えるのか? 2025/09/06 制御工学勉強会 第024回 お気軽セッション 発表者:テツオ 1
自己紹介 ◼ハンドルネーム:テツオ(本名ではありません) ◼静岡県浜松市在住の技術系会社員(ソフトウェアエンジニア) ◼幼少期にレゴ・ミニ四駆に触れて以来、趣味でもモノづくり継続中 ⚫NHK大学ロボコン ⚫レスキューロボットコンテスト ⚫マイクロマウス(ロボトレース)→Xアイコンはミニ四駆型ライントレーサー(2006年頃) ⚫魔改造の夜「トラちゃんウサちゃん50mリレー」 ⚫Maker Faire
(Tokyo, Ogaki, Hamamatsu)出展 ➢Scratchでペンプロッターを動かす ➢人生を制御するルーレット 2 X:@ktetsuo
「人生を制御するルーレット」の紹介 ◼好きな目を指定して止めることができるルーレットです。(悪用厳禁) 3 https://www.youtube.com/watch?v=z3t7xZzwHNs
なぜ作ったか? ◼「お年玉ルーレット」をXで見たから 4 https://x.com/KazumasaKusaba/status/1624899272033570817 https://x.com/KazumasaKusaba/status/1625082018186018816 ステッピングモーターだと手で回すと固いので、 制御されてる感満載だなあ… →DCモーターなら手で回せるのでは??
メカ構造 ◼ロータリーエンコーダーで角度検出して、DCモーターで停止位置を制御 5 ミニ四駆用モーター (ダブルシャフトモーター) 回転板 磁気式ロータリーエンコーダー (アブソリュート式) 項目 仕様/構成
モーター ハイパーダッシュモーターPRO モータードライバー TB6612 (Toshiba) ロータリーエンコーダー AS5600 (AMS) 分解能 4096 [count/r])
システム構成 ◼モーター制御はRasPi PicoW、UIはM5Stackが担当 6 Bluetooth 目標値 ルーレット側 UI側 M5Stack Core2
Raspberry Pi Pico W 現在位置(表示用) 今日はこちら側の話をします
制御方法 ◼全体の状態遷移 7 加速待ち 減速開始待ち 減速制御中 回転速度が一定まで上がった 停止した 減速開始待ち中の最大速度から 速度が一定以上下回った
回転速度 手で回された ことを検出 時間 加 速 待 ち 減 速 開 始 待 ち 減 速 制 御 中 手が離れた ことを検出
④ 現在速度 から でちょうど停止するために必要な加速度 を求める 𝑣𝑡 𝑥target 𝑎target 𝑎target =
𝑣𝑡 2 2𝑥target ⑤ 加速度 を出すためのモーターのPWM値を求め、出力する。 (加速度はPWM値に比例するとして実験で係数を求めた) ⑥ ④,⑤を繰り返す 𝑎target ③ に一番近い止めたい数字の位置 を求める 𝑥0 𝑥target 制御方法 ◼減速制御方法 8 速度 ① 減速制御開始時点の速度 を計測する ② から自然減速したときの予測停止位置 を求める 𝑣0 𝑥0 𝑣0 𝑣0 𝑥0 𝑥target 4で止めたい場合→ ←このままだとここに止まる モーターフリーの場合の減速カーブ この減速カーブになるように制御 位置 𝑥0 = 𝑣0 2 2𝑎0 1 2 4 5 6 7 8 9 10 3 1 2 4 5 6 7 8 9 10 3 モーターフリーの場合の加速度 あらかじめ実験で求めておく
制御のポイント ◼長い区間をかけて目標値に停止するようにしている ⚫人間の目には制御しているように見えず、あたかも自然に停止しているように見える。 ◼制御周期は4ms ⚫エンコーダーとのI2C通信に3msかかりそれに依存している。 ◼等加速度運動とすることで、高校物理程度の知識で実現できた。 ⚫制御工学は大学でちょっと触れたが全部忘れました。PID制御はチョットワカル程度。 ◼モーターは減速を少しアシストする程度 ⚫ほぼ自然減速に任せており、モーターに大きなトルクは不要。減速機構なしで十分だった。 ⚫PWMのDutyは0~20%くらいで推移している。
◼この制御方式を思いついて実装したら、一発で動いた。 ⚫自分でも目を疑った 9
おわりに ◼この制御は何制御と言えるのか? ⚫みんな大好きPID制御ではない。 ➢最初はガチガチにPID制御しようとしたがモーターのトルク不足?で全然うまくいかなかった。 ⚫必要なトルクを算出して出力しているので、フィードフォワード制御? 10 制御ガチ勢の皆さんに意見を聞きに参りました。 よろしくお願いいたします。m(_ _)m