理系的な戯れ

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

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

はじめに 最近Twitterが面白くなってきて、そちらで遊んでいたのでブログが疎かになっていますが、ブログも頑張っていこうと思います。 僕のペースでは3週間に2本ぐらい更新できれば今のところ精一杯なのかなと思います。 頑張れる時は頑張ろうと思います…

グラフ理論と迷路探索

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

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

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

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

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

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

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

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

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

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

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

Jupyter labのインストール

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

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

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

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

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

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

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

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

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

ミサイルの誘導法対決

はじめに こんにちは、こうへいです。 今日はミサイルの誘導法について取り組みたいと思います。 ゲームとかでミサイル実装するのに役立つかな。 はじめに 単純追尾航法 PPN(Pure Pursuit Navigation) 比例航法 PN (Proportional Navigation) ミサイルの運…

億万長者になる!

はじめに こんにちは、こうへいです。 いつもと毛色の違うタイトルでびっくりしますが、僕は億万長者ではありません。 毎日、食うために妻共々死ぬ思いで一生懸命働いています。 今後の科学技術、医療技術の進展は予想を超えそうな感じがしますので、今後ど…

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

はじめに こんにちは、こうへいです. 昨日の記事でトランジスタインバータ回路の応答が遅れる事に触れたんですが,それ以上追求しませんでした. blog.rikei-tawamure.com Twitterでもつぶやきましたが,今日はそれについて,少し考察できたので,話したいと…

S.BUSプロトコル

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

名刺は後転しながら前に落ちていく

はじめに こんにちは、こうへいです。 昨日、Twitterに投稿してみたんですが、誰でも見たことありそうなのですが、そう言われると、確かめてみたくなるネタではないかと個人的に思っています。 名刺や葉書を前に放ると必ず後ろ周りしながら落ちていきます。…

転がり抵抗測定(2)

はじめに こんにちは、こうへいです。 前回、転がり抵抗を測ってみたのですが,何種類かの重量を用意して垂直荷重の変化に応じた転がり抵抗を計測しようと思います. blog.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)台形加減速

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

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

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

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

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

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

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

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

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

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

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

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

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

STM32を用いたモータ速度過渡応答取得

はじめに こんにちは、こうへいです。 3連休も今日で終わりです。この連休も理系的な活動が充実しました。 今年の成人式は無事に終わったのかな? 慣れないSTM32で、周期的にモータからの角度情報を得られる様になったので、 当初の目的の1724モータ速度応…