理系的な戯れ

理工学系とくにロボットやドローンに関する計算・プログラミング等の話題を扱って、そのようなことに興味がある人たちのお役に立てればと思っております。

Raspberry Pi Picoで制御するドローン「PicoCopter」の製作ガイド

はじめに 昨今話題のドローンの一種であるマルチコプタは制御しなければ絶対に浮いてられないため制御する対象としては大変面白く、マルチコプタを用いた制御工学の学びは学習のモチベーションの維持に最適だと思います。 ところが制御工学学習用に適したマ…

地磁気センサ校正のための楕円体の方程式について

はじめに マルチコプターの方向を推定する。加速度センサ、角速度センサ、地磁気センサのうち、 特に地磁気センサを使用するためには校正が必要なため、校正をするソフトを構築する際の 楕円体に関する知識と、校正のための知識を整理したいと思います。 は…

カメラを注視点に向ける

はじめに マルチコプタのシミュレーションをしたいと考えた際に、計算結果を3次元CGで可視化したいと 思い始めると、動き回るマルチコプタを画面に収めるため、あたかもカメラがマルチコプタを 追い続けるような事を考えなければなりません。 前に、物体の…

ドローンをガメラの様に飛行させる

はじめに ドローンにガメラ飛びをさせたい・・・ 唐突なお話しですが、最近ではすっかりドローンと呼ばれるようになったマルチコプタをガメラの様に回転しながら飛行させるにはどうしたら良いのかと言うのが本記事の内容です。 これは私の私的興味によるもの…

ライントレースロボットのシミュレーション

ライントレースロボットのシミュレーションアイキャッチ はじめに ロボットランサーはじめました(昔ばなし) 機械学会主催のロボットグランプリのロボットランサー競技と言うトラック上の白線コース上をロボットが走行して、 トラック周辺にある的を槍で突…

移動ロボットの壁沿い走行制御について

はじめに マイクロマウス の様な移動ロボットを壁に沿って走らせたいと言う場面は、 教育用のデモ走行やその他の簡単なアプリケーションでは多く見かけられると思います。 何かの軌跡に沿って走らせたいと言うのもさらなる応用として考えられます。 今回は無…

グラフ理論と迷路探索

はじめに マイクロマウスの迷路探索では探索アルゴリズムとして左手法、トレモー法,足立法などがあるのですが そういった観点とは別に迷路をノードとエッジに見立てたグラフとしてとらえて、ダイクストラ法で 最短経路を見出そうというお話をしたいと思いま…

物理シミュレーションによるオドメトリの検証

はじめに 前回は横滑り運動を考察しましたが、マイクロマウスのような2輪差動式の移動ロボットのシミュレーションについてもプログラムを作ることができました。 そこで、自己位置推定のオドメトリ計算について 直線近似 円弧近似 横滑りを考慮した場合の直…

マイクロマウスの横滑り運動

はじめに マイクロマウスの運動についてタイヤの力学を含めて考えてみたいと思います。 マイクロマウスを完全な6自由度の運動をすると思うと、考察がかなり厳しくなるので、今回は平面内での3自由度に限定して考えていきたいと思います。 その中で横滑りの…

LR回路のスイッチング動作の計算

LR回路のスイッチングについて考えることはモータの内部回路がコイルと抵抗で構成されていることを考えると大事です。回路方程式からひも解いてオン、オフ時の過渡応答を明らかにします。

オドメトリによる移動ロボットの自己位置推定

移動ロボットの自己位置推定の基本としてオドメトリがある。本記事ではマイクロマウスのような2輪移動ロボットの直線近似及び円弧近似によるオドメトリ計算について記述した。

マクローリン展開でcosを近似

マクローリン展開の打ち切り誤差を調べてみました.マイクロマウスのようなロボットのオドメトリによる走行軌跡の計算における三角関数の積分をマクローリン展開した多項式を適当な次数で打ち切った式を用いる方法が提唱されています.そこで,まずはマクロ…

JupyterLabのインストール

はじめに こんにちは、こうへいです。 最近は、普段使いの計算環境はJupyterLabにしています。 pythonを使ってちょこちょこ計算をするのに ものすごく便利に使えていて、OSを選ぶ必要がなくて超いけています。 Dropboxのようなローカルと同期してくれる,ク…

3体問題アポロ8号のキセキ

はじめに こんにちは、こうへいです。 いつの間にか記事数が50記事になりました! COVID-19に関する情報が気になりブログ更新をサボっていて申し訳ないのですが 今日は前回に引き続き、3体問題について見ていきます。 取り扱う話題のベースはアポロ8号で…

2体問題のシミュレーション

はじめに 前回ウイルス感染のパンデミックのシミュレーションをしてみたのですが、 粒子のクラスを一般的な移動のシミュレーションに使えそうなので すこし、改良して使ってみようかなと思いました。 数値計算を考えるときに2体問題は解析的に解けるけど3…

ミサイルの誘導法対決

はじめに こんにちは、こうへいです。 今日はミサイルの誘導法について取り組みたいと思います。 ミサイルを誘導する方法として主なものに「単純追尾航法」と「比例航法」があります、本記事ではそれらを対決させてみたいと思います。 ゲームとかでミサイル…

トランジスタのスイッチング高速化

はじめに トランジスタで作ったインバータが遅れるのと なまっているのがオシロの測定で確認できたので。 高速化について検証しました。 ことの発端は、 昨日の記事のトランジスタインバータ回路の応答が遅れる事に触たれた S.BUS回路用の反転回路の信号測定…

S.BUSプロトコル

ドローンを含めロボットを遠隔操作に広く普及しているS.BUS通信ですが、S.BUS信号のデコードやエンコードの必要が出るためS.BUSプロトコルについてまとめました.

転がり抵抗測定(2)

はじめに こんにちは、こうへいです。 前回、転がり抵抗を測ってみたのですが,何種類かの重量を用意して垂直荷重の変化に応じた転がり抵抗を計測しようと思います. rikei-tawamure.com はじめに 転がり抵抗の推定 運動方程式とつりあいの方程式 並進の運動…

転がり抵抗測定

はじめに 電流フィードバックの記事で転がり抵抗を知りたくなったので,測る方法を考えて,測ってみました. kouhei-no-homepage.hatenablog.com 測り方 スロープを用意して,タイヤを両端に付けた軸を初速0から転がして,転がりに要した時間を計測します.…

Pythonで考えるDCモータの制御(9)電流フィードバックと根軌跡

はじめに こんにちは、こうへいです。 今日はDCモータの電流フィードバックについて考えてみます。 電流をフィードバックをして電流値にゲインをかけると、 PI制御の速度制御系にD項を加えるのと同じ効果がでるはずです。 これは、速度の微分の加速度が電流…

Pythonで考えるDCモータの制御(8)Interact&Bokehによるインタラクティブな台形制御の計算

はじめに こんにちは、こうへいです。 先日、モータの台形加減速制御について考えてみました。 kouhei-no-homepage.hatenablog.com 比例ゲインや積分ゲインをインタラクティブに変えて、応答の変化を見たいと思い、 jupyter notebookでintractを使用して改良…

Pythonで考えるDCモータの制御(7)伝達関数計算用関数

はじめに こんにちは、こうへいです。 これまで、繰り返し繰り返し、伝達関数などの計算を行い、そろそろ同じことの繰り返しに飽きてきたので Pythonの関数に落とし込もうと思い、プロトタイプを作ってみました。 伝達関数を分母と分子の多項式の係数を与え…

Pythonで考えるDCモータの制御(6)台形加減速

はじめに こんにちは、こうへいです。 制御工学についてもおさらいができました。 rikei-tawamure.com 前々回のお話までで、台形信号をラプラス変換の世界でどのように表現し、 計算ではどのように扱えば良いのかの見通しが立ちました。 rikei-tawamure.com …

Pythonで考えるDCモータの制御(5)制御の基礎の基礎とPython

はじめに 制御工学に関する計算とPython 余談 今回は制御についてです ラプラス変換と逆変換 ラプラス変換 ラプラス逆変換 ラプラス変換はしんどい?! 道具としてのラプラス変換:微分方程式を解く道具 微分方程式を代数方程式へ シンプルな操作の代償とし…

Pythonで考えるDCモータの制御(4)台形入力

はじめに こんにちは、こうへいです。 モータ制御する時に、台形状に加減速する事がよくあると思います。前回、ランプ入力を考えましたが、 台形状の目標値を作り出すのに、ランプ信号が役に立ちます。 rikei-tawamure.com そこで、今回は 台形状の入力をど…

Pythonで考えるDCモータの制御(3)ランプ入力に対する1型PI制御の応答

はじめに こんにちは、こうへいです。 前回まで、DCモータの速度PI制御について考えてみました。 rikei-tawamure.com これからは、さらに進んでマイクロマウスやロボットでは速度を台形状に制御する事が多いので、 その検証をできるように考えてみたいと思う…

Pythonで考えるDCモータの制御(2)モータのPI制御について

はじめに こんにちは、こうへいです。 とりあえず分割することにしました Pythonで考えるDCモータの制御が漠然とだらだらと思いつくままに、書き続けたためか、自分の文章力がないためか 長くなってきたので、分割することにしました。 でも、一記事にまとめ…

Pythonで考えるDCモータの制御(1)モデルによるステップ応答の比較

はじめに こんにちは、こうへいです 初めてチャレンジしたロボットランサーから、 DCモータの制御をこれまで取り扱う事が多かったんですが 同じ事を何度も繰り返しているので、一度整理して見たくなりました。 これまでの記事と確実に重複しますが、それを承…

基盤起こしに挑戦!ドローンフライトコントローラ用S.BUSセレクタ編

はじめに こんにちは、こうへいです。 今日は平日なので、趣味の活動もショートですが、以前からやりたかった、 ドローン用フライトコントローラーのためのS.BUS信号セレクターの基板起こしをはじめました。 ドローンの自律化のために 夏に飛行ロボコンに学…