manvaのエンジニアリング魂

エンジニアリング・ものづくり・DIYをもっと身近にするためのブログ。インスピレーションを刺激します。

2021-01-01から1年間の記事一覧

ODriveで低価格サーボ

大きさは正義(力こそパワー)であるが,個人でロボットを作ろうとする場合や,企業等で個人向けにロボットを作って販売しようとする場合,たいていは小さいものしかできず,(オタクではない)一般人には,おもちゃ扱いされがちである。 なぜ小さいものになって…

スモールゲイン定理の必要性を完全に理解した

前に書いた記事↓で, manva.hatenablog.comスモールゲイン定理(ロバスト制御の話で出てくるバージョン)で,が必要条件でもあることについて,自分なりの結論を出していたが,まだちゃんと理解できたという確信がなかったので,しつこく調べていた。スモール…

無料で実践ロバスト制御⑦ mixsynの方が楽だった

平田氏の著書「実践ロバスト制御」↓を無料のPython-Controlで勉強する試み⑦。実践ロバスト制御 (システム制御工学シリーズ)作者:平田 光男コロナ社Amazon今まで,教科書のMATLABサンプルの通り,hinfsynを使ってH∞制御問題を解いてきたが,mixsynというコマ…

スモールゲイン定理は「必要」十分条件?

スモールゲイン定理は,「十分条件」と書かれている文献も多く,それなら当たり前の話として理解できるのだが,ロバスト制御の文献になると「必要十分条件」と書かれている。これが謎だったので,調べてみた。結局,この記事の最後に書いてある結論に到達す…

不要な条件なのに「必要条件」という違和感

(AならばB)が成り立つとき、BはAの必要条件であるという。AであるためにはBである「必要」があるから必要条件。うん、BじゃなかったらAじゃないからBである必要があるよな。わかる。 しかし、高校で習ったときからずっと自分の中で何か違う気がしていた。…

無料で実践ロバスト制御⑥ 重み関数の決め方

ほぼ教科書の受け売りになってしまうが,重み関数の決め方や意味を必要最小限だけ説明しておく。 重み関数 無料で実践ロバスト制御④ ーH∞制御問題を解くー - manvaのエンジニアリング魂 の手順3で,重み関数は乗法的摂動を覆うように決めた。 これは何をし…

無料で実践ロバスト制御⑤ ー修正混合感度問題ー

平田氏の著書「実践ロバスト制御」↓を無料のPython-Controlで勉強する試み⑤。実践ロバスト制御 (システム制御工学シリーズ)作者:平田 光男コロナ社Amazon前回までで,H∞制御問題の解き方の流れが把握できた。 まずその結果を確認する。 移植したコード「プロ…

無料で実践ロバスト制御④ ーH∞制御問題を解くー

平田氏の著書「実践ロバスト制御」↓を無料のPython-Controlで勉強する試み④。実践ロバスト制御 (システム制御工学シリーズ)作者:平田 光男コロナ社AmazonPython-ControlでH∞制御問題が解けたので,どのようにしたかを書いておく。 Python-ControlにはH∞制御…

無料で実践ロバスト制御③ ー摂動を持つ制御対象ー

平田氏の著書「実践ロバスト制御」↓を無料のPython-Controlで勉強する試み③。実践ロバスト制御 (システム制御工学シリーズ)作者:平田 光男コロナ社Amazonまずはロバスト制御系設計の流れを体験してみたい。 MATLABやPython-Controlを使う前提で 理論は後回し…

無料で実践ロバスト制御② ーまずは古典制御ー

平田氏の著書「実践ロバスト制御」↓を無料のPython-Controlで勉強する試み②。実践ロバスト制御 (システム制御工学シリーズ)作者:平田 光男コロナ社Amazon以下これを「教科書」と呼ぶ。 Python-Controlのインストール Pythonを使うならAnacondaをインストール…

無料で実践ロバスト制御① ー挫折からの再入門ー

平田氏の著書「実践ロバスト制御」をPython-Controlを使ってやってみようという話。 今まで,ロバスト制御を試してみたいと思いつつ,なかなか難解なので挫折していた。 なぜ挫折してしまうかというと,以下のような要因がある。 数学的に難解 理解するため…

マウス内蔵キーボードver.0.4 爆誕

できた。使ってみた。ダメだ。もちろん、前に作ったものよりは格段に良くなったのだが,残念ながらこれを普段使いにしたいとは思えない。慣れれば使えないことはない,というレベル。一番の問題は、キーをすり鉢状に傾けすぎたせいで,押したときにデバイス…

Arduino IDEで日本語キーボードを使う方法

Arduino IDEで日本語キーボードを作ろうとしていたら,キーボードの仕様がいろいろわかりにくかったので、まとめておく。 Arduinoの仕様 ASCIIコード まず,古く(1963年)からある仕様で,ASCIIコードというのがある。 ASCII - Wikipedia 128個(7ビット)の基…

マウス内蔵キーボードの作り方(ver.0.4) ハードウェア完成

ハードウェアが完成し、全てのキーがちゃんと入力できることを確認した。 前回以降の製作過程を書いておく。 まず、3Dプリンタのフィラメントが無くなったので買い替え。前にブログにも書いた通り,今まで使っていたフィラメント↓が良かったので、また同じの…

マウス内蔵キーボードの作り方(ver.0.4) 3Dプリンタのトラブル

右手デバイスができたので,左手デバイスを作っているが,ここに来て3Dプリンタが不調。 最初は変にザラザラになったな、くらいの感じ↓だったが、 不調のまましばらく使っていたら,次第に悪化して,フィラメントの出が悪くなって,かすれたようになり,エク…

マウス内蔵キーボードの作り方(ver.0.4) シリアル通信 右から来たものを左で受け止める

左右分割キーボードで、右手デバイスからの情報を左手デバイスで受取る部分ができた。 シリアル通信の配線はこんな感じ。2台のPro MicroのTXとRXをクロスして繋ぐ。 左手デバイスはまだ作ってなくて,Pro MicroにTRRSケーブルのジャックだけをつないだもの。…

マウス内蔵キーボードの作り方(ver.0.4) 右手用の配線

右手用デバイスを配線し,マウスとキーボードを切替えて使えるようになった。切替え用のキー(「マウスシフトキー」と呼ぶことにする)を押している間はマウスとして使え,離しているときはキーボードとして使える。 右手用デバイスは,24キーあって、基本的に…

デジタル入力が足りない場合の対処 ~ キーマトリクス

デジタル入力(DI)ピンが足りない場合、キーマトリクスを使う。検索すれば既に情報がいっぱいあるが、めっちゃ丁寧に説明してみる。Pro MicroなどのArduino系マイコンでは、プルアップ抵抗が内蔵されており(内部プルアップ),それを使えばスイッチをGNDに繋ぐ…

デジタル入力の基礎的な話 - プルアップとかそんなん

自作キーボードで使われるキーマトリクスの話を書こうとしたが、もうちょっと基礎的な話も書いてみた。普通のスイッチ1個をデジタル入力する場合。下図のような回路で,Vccに繋げばDIはHighとなり,GNDに繋げばDIはLowとなる。 ただ,こういうスイッチは値段…

マウス内蔵キーボードの作り方(ver.0.4) マウスとして完成

前回書いた問題が続々と解決し,まずはマウスとして使えるようになった。 基板が来た もう来ないかと思っていた基板がついに来た。Elecrowに2020/10/5発注で2021/1/6着。3ヵ月もかかったので、来たことが逆に驚きだった。 5枚発注したが、6枚入っていた。黒…