スタッフブログ

奮闘記【6】台車の問題点改善と電源 ...

2018年07月13日 13:34:25 by fdkltd

どうもhataです
前回動かしていた台車ですが『PCとUSBで接続している状態でなければ動作しない』という問題点がありましたが解決することができました。

動作しなかった理由はゲームパッドのレシーバーに駆動電源が入っていなかったためです。マイコンボードには「U5V」と記された『microUSB』から電源をとるピンがあるのですが、外部電源モードにした場合microUSBは接続されていないため、このピンには当然出力がありません。私はこのピンを外部から接続するUSBのための5V電源出力ピンと勘違いしていたので、外部電源モードにした時もこのピンにレシーバの電源ピンを接続したままでした。結果的にレシーバの電源が入っていない状態だったのでゲームパッドとの接続ができませんでした。

その後、台車は動かせるようになりましたが、ある程度動作させているとエラーが起こるようになりました。そのエラーをLCDで表示するために、エラーを得るコマンドをモータドライバに送っていましたが返答がありませんでした。原因はモータドライバのデイジーチェーン接続ができるものとできないものが混在していたためでした。対応策として、デイジーチェーン接続ができないものに外部回路を接続し、一緒にデイジーチェーン接続をできるようにしました。

今週はそれが終わってから、八尾ロボコンで利用しようと考えているLiPoバッテリーの電圧監視システムを作っていました。

3セルのLiPoバッテリーは電圧が最大約12.5Vまで上がるので、電圧が11.5Vより大きければ容量がある状態とみなしLEDは消灯、11.5V以下であれば容量が少なくなってきているのでLEDを点滅、11V以下になると容量が少なく充電が必要な状態なのでLEDが点灯するようなシステムにしました。
マイコンボードのAD変換の基準電圧が3.3Vなので、バッテリーの出力電圧を1/4に分圧してマイコンに接続しました。
完成後、システムを動かしてみたところ、LEDは点滅・点灯の動作はしましたが、想定している電圧値で動作していませんでした。原因を調べたところ、分圧回路に使用した抵抗の誤差によりバッテリ電圧を正確に1/4できていないことがわかりました。分圧回路を正確に作ることや、プログラム上での電圧値の値の補正などの対策を行わないときちんと動かないことがわかりました。

次週からは自社PR用のLINEスタンプの作成や、引き続き八尾ロボコンに向けての勉強などをする予定です。

奮闘記【5】オムニの台車

2018年07月06日 15:58:05 by fdkltd

どうもhataです。
前回来週は動かす‼と言っていたあの台車が動きました(まだ問題はあるのですが)。


コントローラの左ジョイスティックで前後左右の移動を行い、右スティックで左右旋回ができるようになりました。
前回調整していたプログラムは内容が整理されていなかったため、理解できない状態になっていました。なのでほぼ1からプログラムを書き直しました。同じ轍を踏まぬように、今回作成したプログラムは、モータを回転させる、ゲームパッドの応答を見る、という各役割に応じたライブラリを作成しました。その結果、自分もわかりやすく、人が見てもそれなりに分かるプログラムが書けました。いままではmainファイルの中に関数を作ってそれらを呼び出していたので、mainプログラムが膨大になり、どこが間違っているのかすぐに発見できない状態でした。

上記に「まだ問題がある」と書きましたが、今起きている問題はPCとUSBで接続された状態でないとゲームパッドの送受信が行われない、という問題です。次週この問題を解決できるように頑張ります。

奮闘記【4】ゲームパッドのデータ受 ...

2018年06月29日 13:39:17 by fdkltd

どうもhataです
今週はUSBゲームパッドとマイコンの通信プログラム作っていました。また、前回のブログに載せたモータドライバを4個同時に制御するプログラムの作成も行いました。来週の記事では「ゲームパッドでこの台車を動かせた」というものが書きたいですね。

ゲームパッドのプログラムはライブラリを利用して作成しました。改良を加えずにライブラリを利用した結果、情報を誤認するような応答が返ってきました。
(例:①ボタンを押しているのに左ジョイスティックが前方に倒されている)
なぜこのようなことが起きるのか調べた結果、ゲームパッドのボタンマッピングが機種によって違うようでした。
今回はそれを、押したボタンに対応した応答が返ってくるようにプログラムを書き換えました。

 余談ですが、今週から利用するマイコンボードがarduinoからNUCLEOに変わったのもあり、新しい開発環境に慣れるのにも時間がかかりました。例を挙げると、arduinoでは「Serial.Write();」で書けたものが、「[自分で決めた名前].putc;」に変わったので何度もこの書き間違いでエラーを起こしました。

奮闘記【3】モータドライバでDCモ ...

2018年06月22日 13:38:53 by fdkltd

どうもhataです。

今週はarduinoからDCモータを制御する勉強をしていました。UARTシリアル通信でarduinoから、モータドライバに正転・反転・ブレーキのコマンドを送信するのですが、モータドライバの仕様書をよく読んでいなかったために、DCモータ用の電源電圧をarduinoの5V【OUTPUT】のピンに接続してしまい、AVRが焼けてしまいました。
今後の対策として、仕様書をよく読み、仕様書が英語だった場合は自分で日本語訳した文だけでなく、翻訳サイトなども利用してよく理解したうえで実験に取り組もうと考えました。

その翌日から、意識を変えて前日のような失敗をしないよう実験に取り組んでいましたが、次はモータドライバを焼いてしまいました。原因は電源回路部分と、ほかの回路部分(回路の裏面)を指でショートさせてしまったことです。
今後の対策として、実験の前にドライバーやモジュールなどの裏面などには養生テープを張り、机には合紙を敷いた状態で実験を始めることにしました。

今回、このような失敗が起きたことで、何が原因でこのようなことになったのか、再発防止には何をしたらよいかなど、を深く考える良い機会になりました。今後二度とこのような記事を書くことがないように、今回の件を糧に精進していきたいと思います。

奮闘記【2】じゃんけんアプリをC# ...

2018年06月15日 13:15:32 by fdkltd

どうもhataです。今まではarduinoで勉強していましたが、今週はC#というプログラミング言語を利用してじゃんけんをするコンソールアプリを作成しました。

まず、C#のを利用した書き方を学ぶため、「サイコロを指定した回数振る」アプリを作成しました。
書き方が分かったところで、C#のもつ「オブジェクト指向」について学び、じゃんけんゲームをするプログラムを作成しました。

最初に書き始めたときはメインメソッドの中にメソッドを作ったりしていて、非常に不細工でなぜ動作できているのかわからないようなプログラムを書いていました。

水曜日からは、じゃんけんプログラムの改良を行っていました。具体的には、下記のようなことをしていました。

・機能をメソッドごとに分ける
・プレイヤークラスを作成して、クラス中だけで変更ができる変数を作成する。
・同様に、対戦相手のCOMもクラスを作成して勝利数、敗北数、あいこの回数などクラス外からの変更を受けたくないものを参照できないようにする。
・インターフェイスを利用してクラスの中の変数名などを統一して簡単化する。

これらのような機能を用いてプログラムを作成することで、プログラムを書き始めた頃から格段に見やすく、さらに変更したい点がすぐわかるようになりました。

奮闘記【1】シリアル通信

2018年06月08日 16:27:43 by fdkltd

新入社員のhataです

今回はシリアル通信と関数を利用したプログラムについて勉強しました。
課題の内容は、センサと人の距離が700㎜未満になったとき「こんにちは」、センサの反応がなくなったとき「さようなら」という発声をするシステムの作成です。

使用したもの

・Arduino Nano(マイコンボード)

・AquestTalk(音声モジュール)

・VL53L0X(距離センサ)

です。

マイコンボード、音声モジュール、距離センサを以下の写真のように接続しました。

シリアル通信の勉強をするため、PCとマイコンボードをUART方式、マイコンボードと音声モジュールをSPI方式で、マイコンボードと距離センサをI2C方式で通信しました。

プログラムの動きは

1. センサの値をとる

2. センサの値が700㎜未満かどうか判断する

・700㎜未満だった場合、直前のセンサの値が700㎜未満でなければ「こんにちは」を発声する
・700㎜未満でない場合、直前のセンサの値が700㎜未満であれば「さようなら」を発声する

このような動作フローでプログラムを作成しました。

また、これらのプログラムの「距離センサ・音声モジュールの初期設定」「距離の測定」
「発話内容の設定」「音声モジュールのReady状態の確認」の部分を関数を用いてプログラムを行ったので、問題を引き起こしている関数がすぐにわかり、関数を用いることの有用性もよく理解できました。

新入社員奮闘記

2018年06月07日 13:37:33 by fdkltd

今年入社しました新入社員です。これからはロボット技術に関する日々の勉強内容などをアップしていきます。毎週金曜に更新予定です。

第10回八尾ロボコン2018のロボ ...

2018年01月30日 10:26:37 by fdkltd

1月27日(土)に八尾市生涯学習センター「かがやき」にて、第10回八尾ロボコン2018のロボット審査会が行われました。

審査会では、ロボットがルール違反していないか、安全性に問題が無いかチェックが行われます。

弊社のロボットは問題なく審査を通過し、仮設フィールドで操縦練習を行いました。

4脚ロボットや二足歩行ロボット、ダクテッドファンを搭載するなど、ユニークなロボットがたくさん競技に参加します。

見て楽しい競技になると思いますので、よろしければご観覧ください。

http://www.matec-yao.com/pub/robot/robocon2018/

 

 

 

ブログ再開

2018年01月19日 9:39:03 by fdkltd

長期間更新していませんでしたが再開します。

よければご覧ください。

第5回八尾ロボットフェスタ2013 ...

2013年02月13日 13:42:59 by y-ono

一般大会試合風景_2

2月9日にアリオ八尾レッドコートイベント広場にて「第5回八尾ロボットフェア2013」が開催されました。 (さらに…)

12old >