Taiyo

大学院生。ロボットプログラミングやら制御工学やら。WRO2016中エキ全国大会出場。某…

Taiyo

大学院生。ロボットプログラミングやら制御工学やら。WRO2016中エキ全国大会出場。某子ども向けロボットプログラミング教室サポーター。

マガジン

  • 【EV3で制御工学】 PID制御による Mモータの速度制御

    「【EV3で制御工学】 PID制御による Mモータの速度制御」の記事をまとめました。

  • 【昔話編】

    【昔話編】をまとめました。

最近の記事

  • 固定された記事

自己紹介

はじめまして。 ロボットやプログラミングなんかを趣味、学業、アルバイトでやっている人間です。 ロボットプログラミングとの出会いと現在地私は、中学生の頃に部活動でロボットプログラミングに出会い、今は大学で制御工学の研究をするとともに、子ども向けロボットプログラミング教室でアルバイトをしています。 キーワードロボット プログラミング ロボットプログラミング 制御工学 LEGO EV3 SPIKE WRO FLL Python プログラミング教育 いろい

    • 【EV3で制御工学】PID制御によるMモータの速度制御⑥

      前回の記事の続きです。 「PID制御によるMモータの速度制御」は、今回で最終回です。内容的には番外編です。 前回までのグラフ前回までの内容で、各時刻でのMモータの速度を記録した、時系列データを取得していました。インテリジェントのプロジェクト内に「.rtf」という拡張子のついた「リッチテキストファイル」があると思います。このファイルをPCにアップロードしましょう。(手順は↓) 前回までは、以下の手順でデータをグラフにしていました。 「.rtf」という拡張子のついた「リッ

      • 【EV3で制御工学】PID制御によるMモータの速度制御⑤

        前回の記事の続きです。 PID制御のプログラムいよいよ、PID制御のプログラムを作っていきます。PID制御を用いると、定常偏差なく、早く目標値付近に収束させることができます。 では、いつも通りの手順でプログラムを作っていきましょう。 まず、各変数の設定と初期化を行います。また、ファイルの削除を行います。右上にファイル名「PID」を入力しておき、「削除」モードにします。タイマーもリセットしておきます。 これで下準備は完了です。制御部分を作っていきましょう。 まず、偏差

        • 近況報告(2024年1月)

          お久しぶりです。しばらく忙しくてお休みしていましたが、ぼちぼち投稿を再開します。とりあえず近況報告をします。 卒論執筆私は2024年1月現在、大学4年生なので、卒論を書かなければならないわけです。お休みしていたのはそれが主な要因です。要するに忙しかったんですね。卒論自体はもう一通り書いたのですが、今は先輩やら先生やらのチェックを受けて訂正したりしています。山場は超えましたが、卒論を書くのってまあ大変ですね。あと2年研究すんの?マジで? 学会準備3月に学会に出ることになりま

        • 固定された記事

        自己紹介

        マガジン

        • 【EV3で制御工学】 PID制御による Mモータの速度制御
          6本
        • 【昔話編】
          12本

        記事

          【EV3で制御工学】PID制御によるMモータの速度制御④

          前回の記事の続きです。 PD制御のプログラムP制御とPI制御において、目標値に早く収束させるにはどうすればよいでしょうか。答えは簡単です。PゲインやIゲインを大きくすればよいのです。しかし、そうすると目標値付近で大きく振動するようになります。これを抑えるために、Dの項を追加します。まずは、Pの項とDの項だけを考えたPD制御のプログラムを作っていきます。 P制御のプログラムにDの項を追加していきます。追加で必要な変数を用意しておきましょう。 last_e … 前回の偏差(

          【EV3で制御工学】PID制御によるMモータの速度制御④

          【EV3で制御工学】PID制御によるMモータの速度制御③

          前回の記事の続きです。 PI制御のプログラム前回、P制御では定常偏差が残ることを確認しました。では、これをなくすためにPI制御を導入しましょう。 P制御のプログラムにIの項を追加していきます。追加で必要な変数を用意しておきましょう。 sum_e … 偏差の累計($${\sum\limits_0^ke[l]}$$に相当するもの)(初期値:0としておく) Ki … Iゲイン(初期値:適当な値に設定しましょう) P制御のときと同じくファイルの削除を行います。右上にファイル

          【EV3で制御工学】PID制御によるMモータの速度制御③

          【EV3で制御工学】PID制御によるMモータの速度制御②

          前回の記事の続きです。 離散化実際にロボットなどを制御するときは、連続時間ではなく離散時間(飛び飛びの時間)を考える必要があります。今回のMモータの速度制御においても、モータの回転数の測定が何ミリ秒という間隔でしか行えないので、離散時間で考えていきます。 PID制御の式の離散化前回の記事で、PID制御の入力は以下の式で表せると説明しました。今回は、時間間隔を$${\Delta t}$$とし、$${k}$$ステップ目の入力、偏差をそれぞれ$${u[k]}$$、$${e[k]

          【EV3で制御工学】PID制御によるMモータの速度制御②

          【EV3で制御工学】PID制御によるMモータの速度制御①

          今回は解説記事です。LEGO Mindstorms EV3を題材にして制御工学っぽいお話を書いてみようと思います。PID制御でMモータの速度制御をしてみました。EV3を触ったことのある人(どちらかと言えば上級者)向けですが、制御工学初心者にも伝わるように書いてみました。 用いたものPID制御の実現のために用いたもの LEGO Mindstorms EV3 EV3ソフトウェア グラフの描画のために用いたもの VSCode(Pythonの実行可能環境であればなんでもよい

          【EV3で制御工学】PID制御によるMモータの速度制御①

          【昔話編】⑫選手側から指導者側へ

          今回は昔話編⑫ということで、選手側から指導者側になったお話です。今回で昔話編はいったん最後にします。 後輩の指導私は、中学生の頃から後輩に指導するのが好きでした。後輩が成長していく様子を見るのが好きで、自分自身も教えることにより成長していくのを実感していました。高校生になってからも、大会がオフシーズンの間は中学校の部活の後輩の指導にあたりました。大学受験が終わったのが2020年3月、コロナが流行り始めて間もない頃でした。あまりに暇を持て余していたので、後輩のための教材を作り

          【昔話編】⑫選手側から指導者側へ

          【昔話編】⑪選手として最後のWRO

          今回は昔話編⑪ということで、高校2年生のとき、選手としては最後となる5度目のWROに出場したときのお話です。 中学5年生高校2年生になっても、中学時代の同期たちとWROに出ようということになりました。3人チームで1人は1学年下の後輩が入りました。チームには入らなかった同期のメンバーたちもときどき手伝ってくれました。さすがに中学5年生にもなって毎日のように中学校の部室に入り浸るのは申し訳なかったので、私の家にロボットとコースを置いて取り組みました。 家でやるのはよくない家で

          【昔話編】⑪選手として最後のWRO

          【昔話編】⑩RoboRAVE Kaga 国際大会

          今回は昔話編⑩ということで、高校1年生のとき、RoboRAVEという大会に出場したときのお話です。 What is RoboRAVE?高校1年生の秋、中学時代の部活動の同期たちとRoboRAVE(ロボレーブ)という大会の大阪予選に出場することになりました。RoboRAVEは以下のことをモットーとしている大会です。 WROと同じく勝ち負けが一番ではないと謳っていますが、2番目に大事なのは「何を学ぶか」とかではなく、何よりも楽しむことが大事、という雰囲気の大会です。大会という

          【昔話編】⑩RoboRAVE Kaga 国際大会

          【昔話編】⑨高校1年生、4度目のWRO

          今回は昔話編⑨ということで、高校生になってWRO2017に出場したときのお話です。 中学4年生高校生になっても、平日は毎日のように放課後に中学校の部室に遊びに行っていました。そして、中学3年生のときに全国大会に出たチームメイトたちとともに、再びWROに出場することになりました。「○○中学校4年生」というふざけたチーム名を付けましたが、高校生になっても中学時代のメンバーと一緒になって取り組んだ時間は、私にとっての青春の1ページです。 はじめての高エキ私にとって4度目のWRO

          【昔話編】⑨高校1年生、4度目のWRO

          【昔話編】⑧WRO2016全国大会

          今回は昔話編⑧ということで、WRO2016全国大会に出場したときののお話です。 ローカルルールの弊害当時、WROの大阪大会では国際大会のルールを少し簡易化したローカルルールで競技が実施されていました。そのため、私たちのチームはそのルールの仕様に合わせてロボットやプログラムを設計しており、全国大会出場にあたって全てをいちから作り直すことになりました。実に約1ヶ月半という短い期間で作り直すのは大変でした。(翌年から大阪大会ではローカルルールではなく国際ルールで競技が実施されるよ

          【昔話編】⑧WRO2016全国大会

          【昔話編】⑦3度目のWRO、全国大会出場が決まるまで

          今回は昔話編⑦ということで、3度目のWRO、全国大会出場が決まるまでのお話です。 2度目のエキスパート競技中学3年生になった私は、3度目のWROに出場します。WRO2016エキスパート競技中学生部門です。床の色を読み、その色によって大きいブロックか小さいブロックかどちらかを運ぶという競技でした。 シンプルな機構私のチームは、8月上旬の大阪大会に向けて4月から取り組み始めました。4月中にはブロックをつかむ機構の案が出始め、5月中旬にはロボットが完成しました。とりあえずつかん

          【昔話編】⑦3度目のWRO、全国大会出場が決まるまで

          【昔話編】⑥ロボットプログラミングにハマった2度目の転機

          今回は昔話編⑥ということで、ロボットプログラミングにハマった2度目の転機のお話です。 WRO関西強化合宿WRO2015の大阪大会が終わり、関西から全国大会に出場するチームが集まる合宿が開催されました。私たちの学校から全国大会に出るチームはありませんでしたが、ありがたいことにご招待いただき、参加しました。 世界2位のロボットを見た合宿の途中、とある高校生のチームのロボットをみんなで見ようというコーナーがありました。そのチームがなんと、後に世界大会で2位という成績を残したので

          【昔話編】⑥ロボットプログラミングにハマった2度目の転機

          【昔話編】⑤2度目のWRO、悔しい思い出

          今回は昔話編⑤ということで、2度目のWROで、悔しい思いをした頃のお話です。 はじめてのEV3WRO2015を前にして、ついに私の中学校にもEV3が1台導入されました。1年前のNXT争奪戦とは打って変わって、まさかのジャンケンでした。結果、私のチームがEV3を獲得しました。はじめてEV3ということで、他のチームのみんなとも協力しながら色々と研究しました。 はじめてのエキスパート競技WROも2度目ですから、エキスパート競技に出場することになりました。ベーシック競技とエキスパ

          【昔話編】⑤2度目のWRO、悔しい思い出