理系的な戯れ

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

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

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

マルチコプターの拡張カルマンフィルタによる9DOFセンサを用いたジャイロバイアス推定と姿勢推定

マルチコプターの飛行制御プログラムを何もないところから構築することを目指しています。その中で、ジャイロ、加速度計、地磁気センサが全部入っている9DOFセンサのLSM9DS1を用いてジャイロのバイアス推定とマルチコプターの姿勢(方向)推定を拡張カルマン…

カメラを注視点に向ける

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

現代ポートフォリオ理論(MPT)

はじめに ついに満50歳を迎えたこうへいですが、生家が商売をしていて常々いつか商売に失敗して 「何もかんも無くなる無くなる」と育てられたせいか、 お金については使う時はパッと使いますが割とシビアに計画的だったりします。 ちなみに言われてた通り…

Pythonで考えるDCモータの制御(10)PWM制御におけるLocked Anti-Phase方式とSign-Magnitude方式について

はじめに 今回の話題はDCモータをHブリッジにより駆動する際の Locked Anti-Phase PWM方式と Sign-Magnitude PWM方式の それぞれがどの様なもので どの様な違いがあるのかを説明させて頂きます。 モータ制御に関連して僕が実際に作ったロボットの話題を一つ…

グラフ理論と迷路探索

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

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

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

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

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

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

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

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

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

JupyterLabのインストール

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

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

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

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

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

Pythonでワシントンポストのコロナシミュレーションを再現してみた

はじめに こんにちは、こうへいです。 今日は、コロナウイルスの伝搬状況を ワシントンポストがシミュレーションしていまして それが面白かったので、自分でも書いてみたいと思って、コーディングの練習も兼ねて挑戦したお話です。 シミュレーションの概要 W…

ニューラルネットワークは電気羊の夢を見るか(1)

はじめに こんにちは、こうへいです。 近頃はAIや機械学習が話題にならない日はない感じとなりましたが、AIの中身を知る人はほとんどいないと思われます。 かく言う僕もその一人ですが、多くのAIの中身はニューラルネットワークであると言われています。 そ…

ミサイルの誘導法対決

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

億万長者になる!

はじめに 今のところは億万長者では無いですが、最近は やり方次第では誰でも計画的にそこに近づけるのではと言う実感を得ています。 いまは毎日、食うために妻共々死ぬ思いで一生懸命働いていますが 収入を増やし、節約し、投資をすると言う王道を 如何に着…

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モータの制御をこれまで取り扱う事が多かったんですが 同じ事を何度も繰り返しているので、一度整理して見たくなりました。 これまでの記事と確実に重複しますが、それを承…

ロボットシミュレーション用のルンゲ・クッタ法プログラムの検討(3)1717モータのシミュレーション

はじめに こんにちは、こうへいです。 お正月休みも今日で最後です。だいぶリフレッッシュできたような気がします。今年も仕事に趣味に頑張ろう! さて、自前のルンゲ・クッタ関数のテストをマイクロマウス でよく使われているFaulhaberの1717T003SRを想定し…

ロボットシミュレーション用のルンゲ・クッタ法プログラムの検討(2)2次振動系のステップ応答 その2

はじめに こんにちは、こうへいです。 前回、2次遅れ系のステップ応答の計算式を紹介しました。今回は2次遅れ系の代表例であるバネマスダンパ系 のステップ応答を計算して、ルンゲ・クッタ法の結果と比較したいと思います。 kouhei-no-homepage.hatenablog…

ロボットシミュレーション用のルンゲ・クッタ法プログラムの検討(2)2次振動系のステップ応答 その1

はじめに こんにちは、こうへいです。 今回は、前回に続き開発中のルンゲ・クッタ関数を使ったバネマスダンパ系のステップ応答が正しいのかどうか確認してみたいと思います。 (と、思いましたが長くなってしまったので、その1とその2に分けました。) (…

ロボットシミュレーション用のルンゲ・クッタ法プログラムの検討(1)ルンゲ・クッタ関数

はじめに 趣味のマイクロマウス活動において、ずーっと思い描いている妄想に、マイクロマウスシミュレータがあります。 ずいぶん昔に斜め探索の探索アルゴリズムの検討のために探索シュミレータを作ったことがありますが、本当の意味でのマイクロマウスの動…