author

ArduinoDeXXX

282
Inbox View Profile
19Instructables936,279Views350Comments

Tell us about yourself!

Achievements

100+ Comments Earned a bronze medal
10K+ Views Earned a bronze medal
Make It Move Contest 2017
Contest Winner Third Prize in the Make It Move Contest 2017
Make it Move Contest 2016
Contest Winner Grand Prize in the Make it Move Contest 2016
Move It
Contest Winner Second Prize in the Move It
  • もう一つの倒立振子(デジタル版)

    こんにちは今回使用したジャイロ・モジュールは「AE-L3GD20」でしょうか?このモジュールの一時的な不具合については、本記事のStep.1の「■ジャイロ・モジュールの問題点(2)」をご参照ください。あと、一つ前の方(yukonoさん)のコメントも参考になるかもしれません。なお予算に余裕があれば、モジュールを複数用意して不具合に備えるのが、一番手っ取り早くて確実だと思います。

    View Instructable »
  • 半日で作る倒立振子

    こんにちはお話を伺う限り、ジャイロモジュールの動作不良のようですね。そうすると、同じモジュールを改めて購入する、もしくは、他のモジュールを購入するしかないと思います。予算に余裕があれば、同じモジュールとデジタル出力のモジュールを2~3個ずつ購入すればいろいろ安心だと思います。なお、デジタル出力のモジュールは、私の別投稿の記事のモジュールを使えば、同記事で使い方を参照できます。あと、同じモジュールを再購入する場合、まずはC6を無効化する前にモジュールの動作確認をすることをお勧めします。動作確認の方法は、本記事におけるmatsumoto81さん、tokumikatuさんのコメントを参照してください(後者のコメントを見るには、最下段の「More Comments」をクリックしてください)。

    View Instructable »
  • The Making of a DIY Brushless Gimbal With Arduino

    Hi,It is difficult to tell you the detail of the sample sketch. You will be able to understand “chkAndCtl()”, if you read it carefully. About “calcPwms()”, you can see many useful comments posted ever and replies for them. Good luck.

    View Instructable »
    • Estimate the Infection Spread of COVID-19
      137 views
      0 favorites
      0 comments
  • 半日で作る倒立振子

    ここで使用しているジャイロ・モジュールは、角加速度が混入するのでコンデンサのショートは必須です。詳しくは先にコメント頂いたmatsumoto81さんとのやりとりを参照してください。なお、ジャイロ・モジュールをデジタル出力のセンサに代えた別バージョンも紹介しているので、コンデンサのショートが面倒ならば、こちらを参照してください。

    View Instructable »
  • The Making of a DIY Brushless Gimbal With Arduino

    Hi,My DIY 3-axis gimbal is very special for my own development. And its sketch is special, too. However the core of the program of multi-axis gimbal here is not different from the single axis one. See Introduction. All sketches I can provide at present are attached here.

    View Instructable »
  • 半日で作る倒立振子

    こんにちは詳細な報告ありがとうございます。高校生と一緒にいろいろ試すの良いですね。秋月さんのジャイロ・モジュール(K-04912)は発売が8年以上前なので結構扱いにくかったりします。(今や9軸のデジタル・センサ・モジュールが800円で売られていますし)秋月さんのサイトのデータ・シートを見ると、モジュールのHPFは村田のジャイロ・センサの温度ドリフトを除去する役割があるようです。なので、HPFをキャンセルする前の静止時出力を見てみてはいかがでしょうか。秋月さんの資料では、静止時の出力は1.35Vとのこと。なので、これとの乖離が大きいようなら、モジュールもしくはセンサの不良を疑う、と言うことになりそうですね。あと添付のグラフですが、横軸の630~670あたりが分かり易いと思います。上のグラフの各速度は谷になっていますが、下のグラフでは、動き始めに下方スパイク、停止時に上方スパイクが見られます。これは各加速度の混入に拠るものと考えられます。

    View Instructable »
  • The Making of a DIY Brushless Gimbal With Arduino

    Hi,I had a similar comment 2 month ago from nexposito. I replied to her/him that crazypatoto had posted a video with MPU6050 in the same month.

    View Instructable »
  • こんにちは注目していただいて嬉しいです。個人的に思い入れのある工作なのですが、閲覧数が伸びず、本記事のおまけで作ったジュールシーフにトリプル・スコアの差をつけられてます。閑話休題。結論から言うと、グロースタータ・タイプの蛍光灯だと、この工作は難しいかもしれません。理由は点灯時の予熱が必要なこと。ウィキペディアさんの解説を見てください。両極から電子を飛ばすために予熱するのですが、この時だけはグロー球が通電状態となって両極のフィラメントが電球状態になって熱せられます。逆に言うと、この余熱が不要なら、片側に2つずつ端子を設ける必要はありません。実際、本工作のStep3では、端子を1本切ったり1つにまとめたりしています。まずはインバーター・タイプの使用をお勧めします。いったん回路を組めば、グロースタータ・タイプでのテストは簡単ですので、是非試してみてください(Step3の銅線に代えて、直管タイプの両側端子(各2本)の1つにつなぐだけです)。

    View Instructable »
  • You had better get a new BLDC with 12Pole/14Slot.

    See “Convert the Raw Values to Usable Angles” in the first reply. You can get Usable Angles.

    View Instructable »
  • Hi,Here we get angular velocity here, not angle. Visit this article and read “Reading the Values from the Accelerometer and Gyro” to “Convert the Raw Values to Usable Angles”. You can see how to get angular velocity using L3GD20.

    The sample code attached in Step 10 can work well only with 12-Pole /14-slot BLDC.

    View Instructable »
  • Hi,I have few works with MPU6050. Hence I cannot tell it well. But I can tell you 2 comments ago posted by crazypatoto. You could get good information.

    View Instructable »
  • Hi,My DIY 3-axis gimbal is very special for my own development. And its sketch is special, too. However the core of the program of multi-axis gimbal here is not different from the single axis one. See Introduction. All sketches I can provide at present are attached here.

    View Instructable »
  • Hi,> 1. I can't find sensor l3gd20. Can I use l4d4200 or any other sensor instead?I cannot find "l4d4200" sensor, but I can find "l3d4200d" sensor.The latter is the previous model of "l3gd20" sensor. I saw a statement that they are substantially identical.> 2. Can you explain the code in the sketch at the end of step 10?See the earlier comments and replies.I recommend you draw 3 lines in a figure. Each of the lines (Line-X: X=1,2,3), shows value of "motorPin(X)" as a function of "deg1000" in the sample sketch.Here "deg1000" is 1000 times of degree of angle to rotate, and the value of "motorPin(X)" is voltage applied to each of terminal of a 3 phase BLDC.The figure has been posted once by a reader, now it is disapp…

    see more »

    Hi,> 1. I can't find sensor l3gd20. Can I use l4d4200 or any other sensor instead?I cannot find "l4d4200" sensor, but I can find "l3d4200d" sensor.The latter is the previous model of "l3gd20" sensor. I saw a statement that they are substantially identical.> 2. Can you explain the code in the sketch at the end of step 10?See the earlier comments and replies.I recommend you draw 3 lines in a figure. Each of the lines (Line-X: X=1,2,3), shows value of "motorPin(X)" as a function of "deg1000" in the sample sketch.Here "deg1000" is 1000 times of degree of angle to rotate, and the value of "motorPin(X)" is voltage applied to each of terminal of a 3 phase BLDC.The figure has been posted once by a reader, now it is disappeared.

    View Instructable »
  • If "flat cylindrical dc motors" mean brush dc motors, I cannot tell you good way to make single axis gimbal work well with them. See Step 2 above.

    View Instructable »
  • こんにちはまず最初の御質問ですが、詳細はStep13の最後の段落とそこのリンク先をご覧ください。サンプルコードはどちらの状況にも対応できるように「alternative line」をコメントアウトした状態で付けています。2番目のご質問ですが最適化の解です。解析解ではないのでなぜそうなのかは私にも分かりません。3番目の御質問ですが不連続な点はないはずです。英語版の方で同じやり取りをしたことがあったので調べてみましたが見つけられませんでした。慎重にやり直せば大丈夫だと思います。

    View Instructable »
  • All I can tell you are described in the earlier comments. See the replies for jgomezu below.However I can tell you an additional point that you should use D9-D10 pins in MEGA not A9-A10.I see the web-site you tell for ax-2804. In it, reviewer MadMaxO posted “I bought 6 units of this motor and only 2 of them work.” Your motor may be similar to the rest four.

    View Instructable »
  • こんにちはご質問、Step5の「invertedRobot_v20_noTimer.pdf」に基づいて回答しますね。1.積分処理角速度の離散サンプリングで、i回目とi+1回目の経過時間をΔT_iとすると次のような角度の評価値を考えることができます。・角度の評価値θ=初期値θ_initial+Σ(過去の角速度の評価値ω_i × ΔT_i)この時、初期値θ_initial=0で、ΔT_iの値がiによらず安定している(ΔT_i=ΔT)としたら、このθは次のように書けます。・角度の評価値θ=ΔT×Σ(過去の角速度の評価値ω_i )一方、Step5の「解説(3)」の制御の方程式では、この角度の評価値θに対して適当な係数k1が乗じられます。サンプル・コードでは、72行目のkAngle/200が、k1×ΔTに相当します。2.recOmegaIの取得タイミング角速度の評価履歴はサンプル・コードの71行目で更新しています。3. recOmegaの役割倒立振子が良いバランスを取ると、角速度はゼロもしくはゼロに近い数値になります。サンプル・コードではこの状態の角度評価値θをゼロにリセットして、誤差の累積による評価ドリフトをキャンセルしています。この時、角速度の評価値にノイズがなければ評価履歴は不要ですが、ノイズがあると一定のフィルタリングが必要になります。サンプル・コードでは、これらの機能は60行目から70行目で実装されています。

    View Instructable »
  • Hi,It seems that standard gimbals in market are built with carbon plates. However for a standard DIY maker it may be difficult to use carbon plate. I think aluminum plate will be the first choice for her/him if she/he has good tools to cut and drill it.

    View Instructable »
  • Hi,I have gone to sea for fishing and spearing frequently this summer. I just came home yesterday. So I have not used Pi and Python in the last 3 months at all. Sorry, I don’t know when I will use them next time. I think I will return to them in this winter.

    View Instructable »
  • I don't know the algorithm "fusion", sorry. I am glad I could know projects where it works.

    View Instructable »
  • You need not mind centrifugal force, because a gyro senses angular velocity not angular acceleration.And you can find some BLDC motors in web which you want. For example:https://www.alibaba.com/product-detail/Brushless-Gimbal-Motor-AX-GM-2212_60092183924.htmlIf you got it, see Step 10. You could get your single axes gimbal.

    In the sample sketch in Step 10, “OmegaD” is 10 times angular velocity which is measured by the 1st gyro attached to the mount side. And “OmegaDa” is 10 times angular velocity which is measured by the 2nd gyro attached to the camera side.If you have each value of these 2 variables already, submit them for these 2 variables. The sample sketch could work.

    View Instructable »
  • See the later part of Step 5. If you do not mind using the special function in MPU, I think you could get 3 axis gimbal with only 2 chips.

    View Instructable »
  • Hi,I see what you meet in this project. Itseems that your RPi works well with Arduino, because your servos work well.They could not work well if the communication between these two boards is notgood. Unfortunately I'm traveling now. Can you wait about a few weeks?

    View Instructable »
  • I am glad to hear you like this. Thank you.

    Generally speaking, it is desirable to provide a dedicated battery for each controller. Especially Raspberry Pi 3 requires 2.5A current. Popular batteries in market might not supply it. Further, 0.5A or more current would flow into even a small hobby motor. Hence we should adequate battery/batteries for our stuff.However I use only one battery in this project, which can supply enough current for stuff. See the picture in Step 15. This mobile battery has two USB outlets. One is connected to Pi 3, and the other connected a USB hub. The latter is plugged with two USB cables. One supplies 5V to Arduino and the other supplies 5V to Motors including 2 servos. A cheap USB breakout board in market is used to supply powers for these motors.The pictures in Step 6 and 10 are cut off at both sides. C…

    see more »

    Generally speaking, it is desirable to provide a dedicated battery for each controller. Especially Raspberry Pi 3 requires 2.5A current. Popular batteries in market might not supply it. Further, 0.5A or more current would flow into even a small hobby motor. Hence we should adequate battery/batteries for our stuff.However I use only one battery in this project, which can supply enough current for stuff. See the picture in Step 15. This mobile battery has two USB outlets. One is connected to Pi 3, and the other connected a USB hub. The latter is plugged with two USB cables. One supplies 5V to Arduino and the other supplies 5V to Motors including 2 servos. A cheap USB breakout board in market is used to supply powers for these motors.The pictures in Step 6 and 10 are cut off at both sides. Click them, you can see whole schematics.

    Hi guys, I am glad to hear you like this. Thank you.

    View Instructable »
    • 猟犬ポインターのロボットを作る
      99 views
      0 favorites
      0 comments
    • Pointer Dog Robot With RPi and Arduino
      1,246 views
      14 favorites
      0 comments
  • At this time, all I provides are shown here, because this electrical ornament has been disassembled already. However if you post something that prompts a new or additional discussion, I can reply for you in the discussion. For example, if you post a schematic you can draw, I might be able to tell you some advices, even if the schematic has several or many defects. I think it is very natural that a beginner looks up the information and studies something with trial and error.

    View Instructable »
  • Hi,You can see stuff working on a breadboard in Video (2) in Step 3. Click the heading picture in Step 3, you could get schematic. Can you draw schematic and post it here?

    View Instructable »
  • I think the pictures you attached are close to my idea. However, I cover only 51.429 degrees to control, though they seem covering 360 degrees. Here 51.429=360/(14/2) and 14 is the number of poles in BLDC. Also I use no trigonometric function, because I approximate the arc with 51.429 degrees as a short line.I recommend you to draw two figures, each of which has 3 line charts. One is based on the sample sketch attached in Step10, and the other is based on the pictures you attached. I think they will be similar to each other. If you draw them, post them please(*). (*) Reader vonkross has posted good comments and figures a few years ago. One of them is the former figure above. Now they are disappeared unfortunately.

    I have already posted the reply to you yesterday. See the reply for your earlier question.

    View Instructable »
  • I read your comment posted to my YouTube video. I reply for it here. I think a wire in your BLDC may have been broken. The sample sketch attached in Step 6 should work with any 3-phase BLDC, if the variable “motorDelayActual” is set enough large value like 250 or 300. Did you check whether each wire is broken or not? See my reply yesterday.

    View Instructable »
  • I replied you in Questions in this page. See above.

    It is not easy to describe the detail of the calculation in Step 8. However you can get good information in this page. See the first reply for Arduino_Research posted 4 months ago, and search key words or user names in this page.

    I watched your video and heard that your BLDC makes a noise in it. I think the last reply for Arduino_Research posted 4 months ago can help you. Search “motorDelayActual” in this page. Also you can find a picture how to check whether your BLDC is broken in earlier comments posted about 3 years ago.

    View Instructable »
  • Hi,If your BLDC motor has 14 poles and 12 slots, it should work in Step 10. Though the driver IC can become very hot sometimes, motor should not become. Check Step 6. If your BLDC rotates with your driver IC in Step 6, wrong wiring or broken gyro is suspected in Step 10.

    View Instructable »
  • I get a similar comment yesterday. See the comment of piop and its reply below.

    View Instructable »
  • Hi, Click “More Comments” button at the end of this page several times, until the button is not shown. And search with key words bellow.1. Noise Elimination >> "pwm frequency”2. Multi-axis Gimbal >> "your own”All sketches I can provide at present are attached here. See Introduction. Enjoy!

    View Instructable »
  • TA7291P is a popular motor driver IC gotten at $1.5 in Japan. Though we can find it at ebay also, we can see various price tags with $1.87 to $11.95. You can use other motor driver or H-bridge instead, if it works with PWM and 3.3-5.0V logic Vcc. Search with “motor driver IC” in web shops like ebay or Google.

    View Instructable »
  • 確認が遅れました(MichiK2さんのコメントとともに先ほど通知が届きました)。「delay(xxx);」は「xxxミリ秒処理を停止(待機)しててね」という指示です。xxx=2500ならば、Arduinoは2.5秒処理停止(待機)します。Arduinoはかなり直観的に扱えますし、丈夫で公開情報も多く多彩な活用ができる上、安価な代替製品も入手可能なのでいろいろ楽しめると思います。

    詳細な情報ありがとうございます。ご案内の諸点、その通りだと思います。・ジャイロ・センサを2つにすると安定が高まる(センサ出力のノイズやバイアスを緩和できるので)・フローリング床よりカーペット上の方が安定する(極端な話、砂や粘土の上に強く押し付けると、電池なしでも直立します。押したら倒れますが)・電池が弱ると安定性が悪化する(いろいろ試すなら、エネループなどの充電可能な電池の方が割安だと思います)・ジャイロ・モジュールは4つほど買っておくと便利だし安心あと、「 omegaI = omegaI +analogRead(A5) - zeroOmegaI;//NL5 の omegaI の値が静止状態で 2 の値を取る」のは不思議ですね。ジャイロ・センサの出力にはバイアスがあるので、それを zeroOmegaI で評価して引き算でキャンセルしています。ArduinoのA5ピンに何らかのバイアスがあるなら、同ピンをGNDを繋いだプルダウン時の出力で確認できると思います。(zeroOmegaIに2を加えるという対症療法もありますが)なお続編が2つありますのでよろしければご参照ください。

    View Instructable »
    • レーザーポインターのスイッチを修理する
      42 views
      0 favorites
      0 comments
  • Hi,Pistol Grip Gimbal you say. It works better for a smaller camera such as GoPro. Download the cover picture above and rotate it upside down. You can see that it is near to Pistol Grip. Only the camera attachment cradle must to be set upside down again with the same tilt axis. It requires enough clearance not to interfere with the pan motor on the bottom.

    View Instructable »
  • Both two sample sketches in Step 6 could work with every 3-phase BLDC motor. See the eLABZ's commentary in his/her site described in Step 6.If a 3-phase BLDC with no wire broken doesn't rotate with these sketches, it should be doubted that the rotation speed too high. You can change it slower. Constant "motorDelayActual" in these sketches decides it.I think you can get good information by three steps below.1) Click "More Comments" button at the end of page until it is not displayed.2) Search this page for the key word "motorDelayActual".3) Search this page for two key term "it is not easy" and "game123".

    Both two sample sketches in Step 6 could work with every 3-phase BLDC motor. See the eLABZ's commentary in her/hissite described in Step 6.If a 3-phase BLDC with no wire broken doesn't rotate with these sketches, it should be doubted that the rotation speed too high. You can change it slower. Constant "motorDelayActual" in these sketches decides it.I think you can get good information by three steps below.1) Click "More Comments" button at the end of page until it is not displayed.2) Search this page for the key word "motorDelayActual".3) Search this page for two key term "it is not easy" and "game123".

    View Instructable »
  • I have gotten several comments like your question ever. See earlier comments and the replies to them*. You can see all of them by clicking “More Comments” button. If you search on this page for some key-word, you could find answers or get good information. (*) For example, Abil FidaA, game123, EricL50 and eggll have posted technical questions and I have replied to them.

    Supplement:vonkross, a reader, posted some comments with good figures. One of these figures explains the function "calcPwm()" and some constant variables well. 10 (or 1000) in the name of variables means multiplying the original value to 10 (or 1000) times.

    View Instructable »
    • ミニビーストを卓上ペットにする
      153 views
      1 favorites
      0 comments
    • Training Theo Jansen's Mini BEEST
      1,130 views
      17 favorites
      3 comments
  • I saw your project. I think it might be interesting that the solenoid can move around on the plate of the platform with a small cart. The levitated spoon seems moving autonomously, if the plate is covered.

    View Instructable »
  • Hi,The upper picture in Step10 is almost the same as the schematic, though lines omitted. I think you can get the schematic with lines by referring to the picture. If you posted your schematic, we might be able to check it and say something.

    View Instructable »
  • Hi,I have gotten many comments for this project. See earlier comments and replies for them. I think you can find what you want to know. Have fun!

    View Instructable »
  • I appreciate your thoughtful comment. I see your site of Hackspace in Leicester. It seems very good studio and people look like having so much fun. I would be glad if this article could help you and them. Thank you.

    Thank you for your comment. I think you could enjoy DIY projects with microprocessor. If your projects require fast image analysis, Arduino cannot work well (Raspberry Pi can work). If not, you can get start your project with Arduino at a lower cost and skill.

    View Instructable »
  • You can make your BLDC rotate. Hence you should not stay at Step6 or 7. I think you should move Step10 and try to get a single axis gimbal with the sample sketch at first. You will be able to know more with reading earlier messages and replies and changing the sample sketch.

    View Instructable »
  • Three sample sketches are shown in this article. The first two in Step6 could not work well for a gimbal. The last one for a single axis gimbal is attached in Step10.

    I saw your comment and video. I think that your code would be similar to the second sample sketch in Step6. To get a good gimbal, I have tried this sketch and abandoned it. See the two videos in Step7; DOCUMENTARY (7) and (8). In these videos the board attached to the top of BLDC motor cannot stay at a point. The board is bigger and heavier than yours. You might see the same situation if you attached a bigger and heavier board to your gimbal. You should try the sample sketch in Step10, which could work well with your BLDC for a single axis gimbal.

    Three sample sketches are shown in this article. The first two attached in Step6 could not work well for a gimbal. The last one for a single axis gimbal is attached in Step10.

    Three sample sketches are shown in this article. The first two in Step6 could not work well for a gimbal. The last one for a single axis gimbal is attached in Step10.

    View Instructable »
  • In “void loop( )” in the sample sketch in Step10, the degree to rotate BLDC is decided by variable “deg1000” in the first function “chkAndCtl( )”. And the value of “deg1000” decides PWM output as variable “variPwm” in the the second function “calcPwms( )”. The angle of BLDC rotating can be shifted by adding a constant to “deg1000” between these two functions. See below.chkAndCtl( );deg1000 = deg1000 + 12345;calcPwms( );

    View Instructable »
  • If your BLDC is the same model shown in Step5 or its successor model, the sample sketch in Step10 ought to work well. It holds rotator of BLDC strongly at a point when three PWM values are kept constant like “217, 0, 255”. If not, breaking of wire in BLDC is suspected. See earlier comments about this topic.

    View Instructable »
  • Two sample sketches attached in Step6 could work with any 3 phase BLDC motors. On the other hand, the sample sketch attached in Step10 should be limited to 3 phase BLDC motors with 14-pole/12-slot. Though it could work with many 14-pole/12-slot BLDC motors, it might not work with a special Delta connection. However I have never been told such one. See Step8 and early comments of Ramirez_MecaUPQ and replies which contain pictures.

    View Instructable »
  • Yes. See the comments of EricL50 and replies for them posted about 2 years ago. You can know more detail.

    View Instructable »
  • Variable deg1000 represents 1000 times of the degree to rotate BLDC. You can find some topics about it in the comments below.

    View Instructable »
  • I see your pictures. Neat work. I understand the array of 2 magnets. However I cannot image well how the lower magnet transmits rotational torque to the upper one. I will be grateful if you show video when you make it rotate. Cheers.

    View Instructable »
  • Interesting. I image your plan for rotation as below. OK?- Magnet 1 (N----S) :lying on the bottom of globe- Magnet 2 (S----N) :rotating in a horizontal plane in the base unitCan the former rotate more slowly than the latter by something resonate? If not, higher reduction ratio might be required in the latter.

    View Instructable »
  • Thank you. I appreciate your suggestion. I get a good alternative.I have looked for topics in web about changing PWM frequency of Due. Then I found a forum about it. A very simple way is described in it. It tells that all we should do are simple changes in variant.h in the Arduino library.However I cannot find variant.h in my old IDE or the latest version in web. I have downloaded earlier versions between the former and the latter. At last I found it in IDE 1.6.0 and 1.6.1. Why it cannot be found in the later versions?I felt something disquieting. I stopped and left it for other new projects. I am going to come back to variant.h when these new projects are finished.

    Thank you. I appreciate your suggestion. I get a good alternative.I have looked for topics in web about changing PWM frequency of Due. Then I found a forum aboutit. A very simple way is described in it. It tells that all we should do are simple changes in variant.h in the Arduino library.However I cannot find variant.h in my old IDE or the latest version in web. I have downloaded earlier versions between the former and the latter. At last I found it in IDE 1.6.0 and 1.6.1. Why it cannot be found in the later versions?I felt something disquieting. I stopped and left it for other new projects. I am going to come back to variant.h when these new projects are finished.

    Thank you. I appreciate your suggestion. I get a good alternative.I have looked for topics in web about changing PWM frequency of Due. Then I found a forum about it. A very simple way is described in it. It tells that all we should do are simple changes in variant.h in the Arduino library.However I cannot find variant.h in my old IDE or the latest version in web. I have downloaded earlier versions between the former and the latter. At last I found it in IDE 1.6.0 and 1.6.1. Why it cannot be found in the later versions?I felt something disquieting. I stopped and left it for other new projects. I am going to come back to variant.h when these new projects are finished.

    View Instructable »
  • Thank you for your good comment. I also have suspected that Arduino Mega with ATmega2560 does not have enough power for my DIY gimbal. Hence I have gotten Arduino Due which has ARM Cortex-M3 CPU in AT91SAM3X8E.I have corrected the original sketch for Mega to work with Due. Though it works well with default PWM frequency, the loud noise is heard. I am searching a good code for Due which can change PWM frequency higher to shift the noise into non-audible range (31kHz) with no trouble.

    View Instructable »
  • > Do you use Excel in order to solve a differential equation and test constants values?Yes, I use Excel to get an approximate solution.However I don't intend to explain the detail here, sorry.

    View Instructable »
  • 1) That's a natural question. Variable “dt” you tell is included implicitly in coefficient “kAngle” in the sample sketch, because it can be thought constant.2) The values of these coefficients are decided finally by trial and error. An equation of motion of the robot or Excel sheet for it is an advanced topic.3) I posted another article to get a self balancing robot where a digital output gyro module, a L3GD20 carrier, is used instead. It is easier to get this module if you are a resident outside Japan.

    1) That's a natural question. Variable “dt” you tell is included implicitly in coefficient “kAngle” in the sample sketch, because it can be thought constant.2) The values of these coefficients are decided finally by trial and error. An equation of motion of the robot or Excel sheet for it is an advanced topic.3) I posted another article to get a self balancing robot where a digital output gyro module, a L3GD20 carrier, is used instead. It is easier to get this module if you are a resident outside Japan.

    1) That's a natural question. Variable “dt” you tell is included implicitly in coefficient “kAngle” in the sample sketch, because it can be thought constant.2) The values of these coefficients are decided finally by trial and error. An equation of motion of the robot or Excel sheet for it is an advanced topic.3) I posted another article to another article to get a self balancing robot where a digital output gyro module, a L3GD20 carrier, is used instead. It is easier to get this module if you are a resident outside Japan.

    1) That's a natural question. Variable “dt” you tell is included implicitly in coefficient “kAngle” in the sample sketch, because it can be thought constant.2) The values of these coefficients are decided finally by trial and error. An equation of motion of the robot or Excel sheet for it is an advanced topic.3) I posted anotherarticle to another article to get a self balancing robot where a digital output gyro module, a L3GD20carrier, is used instead. It is easier to get this module if you are a resident outside Japan.

    View Instructable »
  • Now I check voltage supplied by three serially connected AA rechargeable (Ni-MH) batteries. I see 3.8V with no motor connected, and 3.6V with motor turning. I think your motor should get more than 4V when turning at full scale (analogWrite = 255).

    I have posted the third article to Instructables for advanced reader who has gotten her/his own inverted robot. Though it is written only in Japanese, you can find it in the site of Instructables.You could read it in English using machine translation in web browser. Though I don’t know the performance of translating in Japanese to English, I think Google Chrome is good translating in English to Japanese.Anyway, you can find many interesting projects in the site of Instructables or others. Enjoy!

    I have posted the third article to Instructables for advanced reader who has gotten her/his own inverted robot. Though it is written only in Japanese, you can find it in the site of Instructables.You could read it in English using machine translation in web browser. Though I don’t know the performance of translating in Japanese to English, I think Google Chrome is good translating in English to Japanese.Anyway, you can find many interesting projects in the site of Instructables or others. Enjoy!

    View Instructable »
  • Hi,I have received many messages and comments with “I made it!” to Japanese version of this article. Some of them use thicker wheels. On the other side, I have received several messages or comments also with “My robot cannot work well”.Two typical mistakes have been seen in the latter cases: (1) wrong wiring in Step4 and (2) wrong activating for line 76 and 77 in the sample sketch in Step8.The robot with wrong wiring cannot follow your finger in Step6. Hence I think your robot don’t have wrong wiring. And I think you can activate line 76 and 77 in the sample sketch well.I think the output powers of driver IC are too low. At the full power, analogWrite = 255, the IC should supply 5-6V power to DC motor(s). See the top picture in Step4. Four serially connected …

    see more »

    Hi,I have received many messages and comments with “I made it!” to Japanese version of this article. Some of them use thicker wheels. On the other side, I have received several messages or comments also with “My robot cannot work well”.Two typical mistakes have been seen in the latter cases: (1) wrong wiring in Step4 and (2) wrong activating for line 76 and 77 in the sample sketch in Step8.The robot with wrong wiring cannot follow your finger in Step6. Hence I think your robot don’t have wrong wiring. And I think you can activate line 76 and 77 in the sample sketch well.I think the output powers of driver IC are too low. At the full power, analogWrite = 255, the IC should supply 5-6V power to DC motor(s). See the top picture in Step4. Four serially connected AA batteries supply power to each motor via IC. Even a good robot cannot keep balancing, if the batteries are exhausted.

    View Instructable »
  • MPU6050 has a powerful engine called “DMP”. See Step5. It does not seem as simple as described in Introduction. Hence I did not use it in this project.Though you can use it as a simple gyro module without activating DMP, I think you will get a problem. It seems that the protocol for MPU6050 is restricted to I2C, and only two addresses, 0x68 and 0x69, are allowed for MPU6050. A pair of gyro modules is required for each axis in this project. It means that you can make only single axis gimbal if you use a MPU6050 as a simple gyro module.I think you should activate DMP if you use MPU6050. However you have to learn how to use DMP additionally, and I have never used it.

    View Instructable »
  • Hi, My DIY 3-axis gimbal is very special for my own development. And its sketch is special, too. However the core of the program of multi-axis gimbal here is not different from the single axis one. See Introduction. All sketches I can provide at present are attached here.

    View Instructable »