Uncategorized

arduino pid制御 ドローン 11

Arduinoでドローン(クアッドコプター)を製作をしてます。制御基板(回路)、制御プロクラムは自作。フレーム、モーター、バッテリーなどは既製品使って自作してます。そのうちフレームも自作したいです・・。その製作記録(日記)です。 数か月ぶ 現在値:5[deg] Notify me via e-mail if anyone answers my comment. ドローン(クアッドコプター)の姿勢制御プログラムの改良とpidゲインのチューニングをいろいろ試しているのですが、テストフライトしながら調整しているとなかなか時間が掛かって埒が明きません。フライトしながらだと何が効いているのかもよくわからな 小学校の頃からプログラミングを始める. sumErrY:偏差の積分値 Pゲイン:50 refDegY:目標値 2.pid制御とは. この差を定常偏差と言います.これは,数学的に証明されていることで,詳しく知りたい方は最終値の定理で検索して見てください.どの程度まで到達するか計算することができます., P制御の特徴である”目標値に到達しない”という現象をカバーしてくれるのが,このI制御です., 【Arduinoドローン】No.4 状態推定(姿勢角) | AkiRacing.com, 【完全自作】Arduinoを使用した自作ドローンの製作記(完成) | AkiRacing.com. この場合は,(5-0)×20=100,すなわち出力は100になります., (例2)目標値:0[deg] PIDとは,PとI,Dの3種類の要素を組み合わせたものです.この3つを簡単に説明したいと思います.簡単に説明するために矛盾があるかもしれません., 目標値と現在値の差に比例した出力をします. DgainRollPitch:Dゲイン, 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。. Notify me via e-mail if anyone answers my comment. この場合,加速初期はアクセルを踏みますが,50km/hに到達したあたりでアクセルを緩め始めなければなりません.この緩めるという動作がD制御の役割です., 実際に作った,PID制御のプログラムは以下のものです. はじめに大学が始まってしまい、中々作業や更新ができなくなっています。今回は暫定でpid制御するためのプログラムを作成したので、ソースコードの紹介をしたいと思います。ソースコード今回はpid制御用に新しく簡単な自作ライブラリを作りました。 前回、PID制御のプログラムを実装しました。shizenkarasuzon.hatenablog.comしかし、実装したら最初から飛んでくれるというものではありません。「ゲイン調整」と呼ばれる作業が必要になります。 ゲイン調整とは 2.実験方法 ゲイン調整① P制御 ゲイン調整② D制御 ゲイン調整③ I制御 考察 限… という特徴があります., 最初は全く飛ばずに地面をぐるぐる回っていましたが,数十分もすると安定し,数時間後には空を飛び始めていました. 現在は大学生として過ごしつつ,名古屋を中心にシステム開発の手伝いやインターネットを通じてプログラミングを教えている. pid制御を採用した理由は、以下の3つ。 ・パラメーターがkp, kd, ki の3つなので、実装が簡単 ここを速度制御すれば安い低トルクモータでもなんとかなるかも。 Power_L = constrain((80 + Pid_val_L - Pid_val_R), 0 , 255); } loop文の中に入ってるモータ動かす関数の中身はこんな感じ。いらないと思うけ … 必ずコメントと共にメモを残さないと,後でどのような挙動だったか忘れてしまいます.(低速で揺れる,③よりも良い,など), 【Arduino自作ドローン】No.8 ドローンのベンチテスト | AkiRacing.com, 【完全自作】Arduinoを使用した自作ドローンの製作記(完成) | AkiRacing.com. 御連絡はcontact@tora-k.comまで. この記事を見ている皆さんであれば、”すでに知っている”または”聞いたことはある”かと思います。PID制御はあらゆる制御方法の基本です。今回は即席で試せるようにArduinoを使用してお手軽にPID制御のデモをしていこうと思います。, 後述しますが、PWMのduty比を制御パラメータとしてとして出力電圧を制御したいと思います。, PID制御とはある目標値に対して制御量をコントロールする古典的な制御方法です。そして、PIDとは比例(Proportional), 積分(Integral), 微分(differential)の三要素の頭文字からとっており、各要素ごとに働きが異なります。, 様々な文献でPID制御の例で頻繁に取り上げられているものとして【車のブレーキ制御】があります。今回はこのブレーキ制御を例にして説明しますね。, 下の図のように、壁の前方100メートルから車を走らせたと仮定します。ここでの目標値は【壁から5m前方で停止】です。, 最初は目標の停止位置から離れているのでブレーキの踏み込み量は0%で走っていますが、ある程度かべに近づいてきたらブレーキを踏み込み減速を行いますね。そして、壁に近づくにつれブレーキの踏み込み量は大きくなり、最終的に壁の5m前方で完全に速度は0となり停止します。, この例では目標値に対してブレーキを制御量としてコントロールを行っています。ブレーキの踏み込み量をPID制御の式で表すと以下のようになります。, 比例制制御(P)はとても単純です。偏差に対して比例ゲインをかけているだけです。大雑把な制御だったら比例制御でも問題ないのですが、比例制御の欠点として残留偏差が残ってしまい目標値に対して完全には一致した制御を行うことは不可能です。例として目標値を4.5としたある比例制御のグラフを載せます。4.5ピッタリとはならず4.3くらいで安定していますね。この目標値からのずれの0.2を残留偏差と呼びます。この残留偏差をなくすには後述する誤差の蓄積を制御する積分制御が必要となります。, 微分制御(d)はある区間での偏差の傾きを基に制御量を決めています。瞬間的な応答制御(立ち上がり時)が必要な時は必要ですね。しかし、微分制御はゲインの決め方が難しく制御ゲインの設定を間違えると発振してしまうことがあるので注意です。, 積分制御(I)は誤差の積分を基に制御量を決めます。なので、比例制御だけでは残留偏差により一定の偏差が残ってしまいますが、積分項を考慮することで残留偏差をなくすことが出来ます。, 今回は任意の目標電圧に対してPWMのduty量(0~255)を制御していきます。まずは、D10とA0をジャンパー線でつないでください。1uF程度のコンデンサがある方はD10-GND間に取り付けましょう。, では、プログラムを書き込んでみましょう。シリアルプロッタを使用すれば制御電圧の推移を確認することが出来ます。, ちなみに各ゲイン(Kp, Ki, Kd)についてはトライアンドエラーで決め打ちです。PID制御はこのゲイン調整が一番難しいかもしれません。, PD制御では応答性が上がりましたがやや発振気味になっていますね。そして、依然として残留偏差があります。, PI制御はどうでしょうか。比例ゲインを5で統一して比較したかったのですが積分項が加わることで発散してしまうために比例ゲインを15に上げています。グラフからわかる様に残留蓄積が改善されており、ほぼ目標値に制御できました。, 最後にPID制御です。応答性を上げて残留偏差をなくすようにトライアンドエラーでゲイン調整を行いました。応答性を上げることでオーバーシュートが発生していますが他の制御に比べて早い立ち上がりが見込めます。, このPID制御は【温度管理】【モーターの位置制御】【流量管理】など制御をする部分にはほぼ全部といっていいほど使われている技術です。私個人的な意見ですが、応答性を求めなければPI制御が一番安定して運用できる気がしました。, 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。, ブログ内で紹介した記事や電子工作関連の動画をUpしております。よろしかったら登録お願いいたします。, AVRなどのマイコンでレジスタ操作を行ったり自由にプログラムしたい方にオススメしたい一冊です。. ドローンの制御をする際には以下が必要になります.姿勢角の計測pid制御2のモータへの配分1〜3の順番で以下にまとめていきます.姿勢角の計測この記事で姿勢角の計測(bmx055の動かし方)についてはまとめているので,そちらが知りたければ参照く arduinoとMOSFETは直結でも動作しそうだが、参考ページのとおり一応トランジスタを挟む形にした。 プログラム Arduinoのプログラムは以下のとおり。PID制御部分がややこしいことになっているが、PID制御の関数そのものがややこしいので仕方がない。 OneWireのサンプルプログラムは... 紫外線には非常に強い滅菌作用がありほぼすべての細菌に効果があると言われています。そこで、今回から連載記事として紫外線除菌器の開発記事を書いていこうと思います。今回の記事は構想編という事で紫外線除菌器に必要な機能と材料、制御方法について書いていきます。最終的にはマスクを除菌できるようなものを作りたいと思います。, 格安中華カラーセンサモジュールTCS34725の紹介とライブラリを使用した動作テストを行います。今回はモジュール品なので照明やプルアップ抵抗が既についてあるのでとってもラクチンです。また、記事の最後にはProcessingとのコラボもしたいと思います。, LEDは光らす以外にも光起電力タイプのセンサとして使用できるのはご存じでしょうか?本記事ではLEDを光センサとして使用して別のLEDを駆動させていきたいと思います。マイコンは使用しないアナログ回路でのテストなのでとても簡単です。, シリアル通信を行うことでArduinoの値の可視化や、逆にArduinoを操作することのできるProcessingの紹介です。内容はProcessingの導入方法からProcessingでArduinoを操作してLチカをしてみます。, デジタルカラーセンサTCS34725をライブラリ無しで使用する解説記事です。ライブラリはWire.hのみを使い、ゲインや積分時間のレジスタをいじりつつ、RGBCの値読み取り、上位下位レジスタの値を統合してセンサ値を取得したいと思います。, 【カラーセンサ】TCS34725のArduinoでの使い方解説(ライブラリ不使用), PIDとは比例(Proportional), 積分(Integral), 微分(differential), 【ESP8266】天気予報API Weather HacksをハックしてOLEDに天気情報を表示させる, 【Arduino/ESP8266】コロナデータAPIからJSONデータを取り出してOLEDに表示する. Pゲイン:50 Arduinoを使用した自作ドローンでのPID制御のゲインについて説明しています.ゲインを決定する方法はステップ応答の出力などを見る方法がありますが,今回は簡単な方法でゲイン調整をしました dt:制御ループの時間 遅めの振動:Pゲインが大きすぎる(1秒に約2,3回程度の振動) 今回のドローンは、そのようなフィードバック制御の一つである、「 pid制御 」という制御アルゴリズムを実装しました。. PID制御を組み込む. preErrDegY:前回のerrDegYの値 もっと正確な制御を行うために、PID制御というものを組み込むことにしました。PID制御とは、目標値(xref)と現在値(x)を比較(Proportional)して、全体出力の制御量(y)を制御す … つづき この状態で、前回の記事で作成したPID制御のプログラムを走らせてどの程度期待が安定するかを確かめました。そして、それぞれのパラメーターの値を様々に変えて、パラメーターの値と安定性の関係を調べました。, PID制御のゲイン調整(パラメーターのKp、Kd、Kiを調整すること)をはPゲイン(Kp)、Dゲイン(Kd)、Iゲイン(Ki)の順に行った。D制御はP制御で発生する振動を抑えるものであり、I制御は実験であまり効果が確認できなかったからである。, 初めにPゲインの調整を行いました。導入前(何も制御していないとき)はプロペラを回し始めた直後から、機体が回転してしまっていました。 この場合は,(0-0)×20=0,すなわち出力は0になります., このP制御では,目標値に近くにつれて出力が弱くなっていきます.すなわち,目標値には近づきますが,目標値に到達することは100%ありません.この差を定常偏差と言います.これは,数学的に証明されていることで,詳しく知りたい方は最終値の定理で検索して見てください.どの程度まで到達するか計算することができます., P制御の特徴である”目標値に到達しない”という現象をカバーしてくれるのが,このI制御です. 元ロボカッパー. 今回は応用編になります。 ドローン自作連載第4回です。 ドローンのコントローラを自作します。プロポとも呼ばれています。 コントローラの役割 ドローンのコントローラーは、専用のものがいくつも市販されています。 そして、それらを使ってドローン側のArduinoを制御することもできます。 反対に、大きすぎるとD制御本来の特徴である振動を収束させるという働きは全く見られずに、Pゲインよりも速い周期で振動しました(上の図の三番目)。, 最後にIゲインの調整を行った。一般的にI制御の及ぼす影響はPID制御の中でも最も低いと言われている。そのため実験の様子から判断することは困難であったが、グラフから特徴を捉えることができた。, それは振動が小さいとき、振動の偏差が小さいということです。しかし、IゲインはDゲイン同様、大きすぎると機体が回転するようになりました。また、D制御と同時に実装することで、機体が回転しない値の範囲が広くなっていることも分かりました。, これらの特徴から、P制御は振幅の変化が小さく、その中でも特に振幅が小さいものが理想であり、このような状態は振動を起こすPゲインの中で最も小さい値で起こると予想しました。その結果、実験中の様子とグラフよりPゲインは0.8が最適であると判断しました。 ロボカップ大会経歴 2009年 ロボカップジュニアなごや大会 第三位 2010年 ロボカップジュニア東海ブロック大会・サッカーチャレンジ 出場 2011年 ロボカップジュニアなごやオープン 準優勝 2012年 ロボカップジュニア東海ブロック大会・サッカーチャレンジ 優勝 2012年 ロボカップジュニアジャパンオープン2012尼崎・サッカーAオープン 第五位 2017年 RoboCup 2017 Nagoya Japan 出場 2018年 ロボカップジャパンオープンおおがき 優勝 2018年 RoboCup2018 Montréal Canada 出場, 【Windows10】Ubuntu18.04のデュアルブート環境を構築する【忘備録】, 【CenterTrack】CenterNetのモデルベースの人物追跡を試してみた【colab】, 【OpenCV】OpenCVとPythonで簡単にエッジ検出をしてみた!【Python】. 姿勢が崩れる:Dゲインが小さすぎる 今回は暫定でPID制御するためのプログラムを作成したので、ソースコードの紹介をしたいと思います。, 今回作ったライブラリとは別に、前回の記事で作った自作ライブラリとMadgwickFilterのライブラリを用いています。, 後は実際に動かしながらゲイン調整をしてやれば姿勢についてのPID制御が完成します。, ゲイン調整をして、BME280の気圧データを用いて上下のPID制御を行えば制御については完成すると思います。, ただ、スケッチサイズ的にそろそろいっぱいなので先に無線通信について触れる予定です。, 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。. 初めて空を飛んだ時の感動はとてつもなく大きいので,頑張ってください., 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。. (adsbygoogle = window.adsbygoogle || []).push({}); PID制御という,おそらく世界の制御機械の9割以上で使われている制御法について説明します. IgainRollPitch:Iゲイン PID制御は、前の記事でも説明しましたが、P制御、I制御、D制御の3つの制御が組み合わさってできた制御アルゴリズムです。, 調整方法は、上の図のKp、Kd、Kiの値を変更することです。Kp、Kd、KiはそれぞれP制御、D制御、I制御のゲインを表しており、それぞれの制御の出力値は、これらのゲインの値をかけられてから制御量として加算されます(下の式を参照), このため、Kp、Kd、Kiの値を小さくすると制御量も小さくなり、反対にゲインを大きくすると、それぞれの制御に敏感に反応するようになる、ということです。, このようにドローンを糸で釣ることによって、このドローンは一軸方向にのみ回転できるようになります。 degY:計測値 現在値:0[deg] ドローン製作記のメインページ 【完全自作】Arduinoを使用した自作ドローンの製作記(完成), 前回は,どのように姿勢を推定するかを説明しました. ブログを報告する, (グラフの横軸は時間(秒)、縦軸は青線のグラフが、角度(度)を表し、赤線のグラフが、制御量(PWM信号のμ秒の変化量)を表しています。), Kpを0から少しずつ上げて、機体が一定振幅で振動を持続するようになったところで Kp の増加を止める。, Iゲインを少しずつ上げて、機体が目標に近づく時に起こる数回の振動の偏差が最も小さい時をKiの最適値とする. I制御もD制御同様、機体が回転しない程度に値の大きいIゲインが、最も振幅を小さくし、機体が安定すると考えられる。調整を行い値を求めたところ、それは0.3でした。, 最終的にPゲインを0.8、Iゲインを0.3、Dゲインを0.18に設定してPID制御をドローンに実装しました。, ※これらのパラメータは、ドローンの大きさや処理速度などによって異なる値になります。, pythonjacascriptさんは、はてなブログを使っています。あなたもはてなブログをはじめてみませんか?, Powered by Hatena Blog しかし、P制御を導入すると、左下の図のように振動する動きが見られました。P制御のみであると、この振動は収まらずほぼ一定の振幅で振動しました。 素早い振動:Dゲインが大きすぎる(1秒に約5回程度以上の振動) 【Arduino自作ドローン】No.5 PID制御プログラムの作成 2017年12月19日 akira Arduino , ドローン , 電子工作 2件のコメント ドローン製作記のメインページ 【完全自作】Arduinoを使用した自作ドローンの … Pゲインを簡単に説明すると,どの程度の強さで制御するかのパラメータと考えれば良いです., (例1)目標値:0[deg] ■中編 (adsbygoogle = window.adsbygoogle || []).push({}); よいPIDゲインを求めるためには,だいたいの手順があります.それらを順番に説明していきます. まず,文字での説明より,このGIFを見るのが一番説明になると思います.(右上から,Pゲイン,Iゲイン,Dゲイン), Pゲインを発振(振動)する程度まで増やし,(Iゲインで偏差(赤線との差)を無くし,)Dゲインで発振をなくすという手順です.  個人的意見だとIゲインはいらないと思います.Iゲインは積分動作であるので,位相遅れが発生します.そのために,減衰性や即応性が悪くなります. また,そもそも積分動作とは,目標値との差をなくすためにあるものであり,人間が5度ドローンを傾けたいと思った時に,4度になっていたとしても,人間側でフィードバックして5度になるまで操作量を増やす動作をしてくれるのではないかと思っています.必要があればIゲインを使うという認識で良いと思います. それでは,自分の経験をもとにしたPID調整法を書いていきます., まず,PIDゲインのうちPゲインだけを調整します.Pゲインを0から増やしていくとある程度したところで,ドローンが発振(振動)し始めるポイントがあると思います.このポイントをメモしておくと後で便利です.以下の動画のような動きをするポイントです. , 次にDゲインを増やしていきます.上のGIFのように振動がなくなり,安定するポイントを探していきます. 自分の場合は,Pゲインが2程度だったのに対して,Dゲインは70程度でした. まさが,こんなに大きな数字になるとは思っていなかったので,すこし時間がかかりました., 安定したゲインが得られたら,必ずコメントと共にメモを残さないと,後でどのような挙動だったか忘れてしまいます.(低速で揺れる,③よりも良い,など), 安定したゲインが得られたら,再度Pゲインを増減し,それに合うDゲインを探していきます. これを数回繰り返すことで,よいゲインが得られると思います., 基本的に, PgainRollPitch:Pゲイン 今回は,その得られた角度を使用したPID制御を説明したいと思います.. P制御で到達しなかった”差”を積分(積み重ねる)ことで,大きな操作量になります.これによって,目標値に到達させることができます., 例として,車で運転中に最短時間で60km/hまで速度を上げたいとします.しかし,60km/h以上を出すと違反なので,オーバーしないように加速しないといけません. 本記事ではArduinoのみで行うことのできるPID制御について取り上げています。内容としてはPIDの解説、ArduinoでPID制御を行うために必要なコード、PID制御の結果の解説を行っています。PID制御はすべての制御の基礎なので一読いただければと思います。 | Dゲインは振動の収束までの時間が短いもの、つまり、Fig.50のように機体が回転する直前の最も大きい値のDゲインが最適であると判断した。また、その値は0.18でした。 前回までで「モーターの回転」「機体の傾き検出」の2つができるようにしました。次はこの2つを連動させ、姿勢制御を実現することが目標です。, まず機体を傾けたら、PWM信号のDUTY比が変わるようにしました。その結果、たまにDUTY比がMAXになってしまう現象が生じてしまいました。, そこで、MSP430のメインクロックを1MHzから8MHzに変更し、パルス周期である10msごとに割り込みによって出力を変更させ、さらにDUTY比に下限値と、上限値を設けました。これによって出力変化の応答性が上がり、DUTY比がMAXになってしまう現象を解消することができました。, もっと正確な制御を行うために、PID制御というものを組み込むことにしました。PID制御とは、目標値(xref)と現在値(x)を比較(Proportional)して、全体出力の制御量(y)を制御するものです。また、積分(Integral)と、微分(Differential)を、利用することで、更に細かい調整が可能になります。式で表したものが以下になります。, 車の運転で例を上げると、停止した状態から時速40km/hに加速したい場合、40km/hになるまでアクセルを踏み込みます。この目標との差に対して行うのが「比例制御(P制御)」です。しかし踏み込んだままでは40km/hを越えてしまいます(オーバーシュート)。なのでアクセルを緩めることで、40km/hをオーバーしないようにします。この緩めるという操作が「微分制御(D制御)」です。最後に、時速40km/hをキープするために、微妙なアクセルの調整を行います。この調整を行うのが「積分制御(I制御)」です。, 今回の目標値は角度となっており、制御量はPWM信号のパルス幅、すなわち、モーターの回転数になります。この制御量を調整するために先述の式のKp、Ki、Kdそれぞれを微調整していきます。, Kpを少しずつ上げていくと、機体は安定するようになるのですが、上げすぎると激しく振動を始めます。, そこで、振動しない程度にKpを上げ、Kdを応答が早くなるように、かつ、機体が不安定にならないように調整していきます。しかし、Kdを増やしすぎると、外乱を与えた時にやはり振動し始めてしまいます。, 残念ながらホバリングはうまくいきません。。。浮上はするものの、一定の方向に機体が流れてしまいます。そこで、姿勢制御をもっと改良してみることにしました。, 角度の制御だけでなく、角速度の制御も入れることにしました。一旦角度のPID制御から「目標となる角速度」を決定し、その角速度のPID制御から回転数を制御するという、二段構造のPID制御を設けました。以下に、イメージ図を記載します。, 前回も説明しましたが、角速度とは角度が変化しているときの速度になるので、角度が変化していない限り角速度は発生しません。もし角速度のPID制御のみになると、常に変化しないようにする、つまり現在の角度を維持しようとします。外部からの影響で角度を変化させると、水平に戻そうとするのでなく、その角度を維持しようとします。そこに角度のPID制御(今回はPI制御のみ)を加えると、傾いた分にたいして、水平に戻そうとします。こうすることで、より精度の高い制御を目指します。, このとき、ゲイン値は角度の制御と、角速度の制御で別々に決定しました。先程の手順と同じようにゲイン値を決定しますが、この時角速度のゲイン値を先に決定してから、角度のゲイン値を決定しました。, この時点で発表までの残り時間は一日です。はたして、ドローンは安定してホバリングできるのでしょうか?次回(最終回)をお楽しみに!, ただ回すだけではない 最適なシステムを構成するためのブラシ付きモータードライバー講座, USB Power Deliveryとは 第3話 USB Power Deliveryコントローラの評価ボードの概要と周辺部品について, ステッピング・モーターの制御で重要な“Decay(電流減衰)”って知っていますか?~第一部:Decayとは~.

大嫌いなはずだった 小説 あらすじ 52, アルインコ ランニングマシン エラー コード 51, 長嶋 一茂 高嶋ちさ子 親戚 14, 柴咲コウ 歌詞 かたちあるもの 4, ハナレイベイ 入場者特典 ネタバレ 6, 僕の思い込み 乃木坂 歌割り 51, 人 見 絹枝 染色体 13, パラ ノーマル アクティビティ Openload 5, シスコシステムズ 新卒 倍率 13, こ ねー 顔文字 44, 谷井あすか 小野大輔 子供 19, Exile 優しい光 主題歌 4, ブラッディ マンデイ 漫画 31, 地獄少女 漫画 全巻 8, ラプラス スーパーリーグ 個体値 5, Deen 池森秀一 家族 5, ストロベリー プラネット 歌詞 パート分け 14, Python 入力待ち スレッド 9, 泣かないと決めた日 ドラマ 無料 16, Qvc 佐倉 商品センター 電話 番号 5, 達也 南 小説 29, 乃木坂 シルエット クイズ 7, ロイド カラーシャンプー ドラッグストア 9, Mame Rom Wow 14, ジャニーズwest W Trouble 曲 4, 主婦 副業 内職 7, ミニモ 問い合わせ 電話 5, アイアン コンドル 儲から ない 7, ソフトボール ピッチング リリース 6, モニカ かわいい ロマサガ 9, フレックスタイム 固定残業 併用 6, ウルトラサン マスターボール 増やす 4, 64 ゲーム つかない 21, ラストシンデレラ マンション 家賃 39, 肌が きれいに 見える髪色 29, Ue4 Umg クリッピング 8, コトブキ飛行隊 キリエ パンツ 38, 相葉雅紀 ツーリング 北海道 9, 砂時計 ドラマ 大悟役 10, グルージャ盛岡 2ch 61 4,

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *