2016-01-01から1年間の記事一覧

ロボットのスピード

C-Styleのタイマーでプログラムの処理時間を図る方法は次の通り。 タイマーをスタートさせる。 処理時間を図りたい処理を実行する。 タイマーの値を変数にセットする。 変数の値をシリアルモニタに表示する。(センサモニターの見出し部分をダブルクリックし…

ロボットのスピード

ロボットのスピードと言えば移動速度が注目されているが、個人的にはプログラムの処理速度も注目するべきだ思う。 C-Styleでロボットを作る場合、プログラムの初期化後に「while:無条件ループ」〜「endwhile」で繰り返し処理を行うパターンが多いと考えるが…

ArduinoでI2Cする際のプルアップ抵抗について

TJ3BをMasterとし、SlaveのArduinoを2台I2Cで接続した際に、I2Cの通信が不安定になり、いろいろ調べた結果、Arduino側の作りにマズい点があった。参考になったのは次のサイト。 Arduino同士でI2C通信する方法 ArduinoでI2C接続するときにSCL,SDAにプルアップ…

C-Styleでビット演算

しきい値を使ってセンサ計測値からセンサのON/OFFを判断する場合、各センサのON/OFF状態を2進数の各桁の0/1に置き換えると1つの変数で複数のセンサ状態を管理できる(以後、状態変数と呼ぶ)。 状態変数に値を代入していく過程では、1,2,4,8,16,..と倍々の…

C-Styleで使用中の変数を探す。

一度ビルドし、テキストエディタでビルドパスにある「User.c」を開く。 変数Aが使われているかどうか調べる場合は、キーワード「VAR_A」で検索する。 以下同様に変数Bの場合「VAR_B」、…、変数Zの場合「VAR_Z」とする。 メモ帳ではいろいろ不便なので、テキ…

C言語の型変換

JPCERT CCの資料を紹介。他の資料も参考になる。 セキュアコーディング CERT C コーディングスタンダード INT02-C. 整数変換のルールを理解する

C-Style での注意点

TJ3BのC-StyleでCNの値で演算する場合の注意点。次の(1)から(4)はそれぞれ同じ計算をしているようで、シリアル表示すると計算結果が異なる。意図する答えになっているのは(3)と(4)。 (1)79,80行 (2)81,82行 (3)83-85行 (4)86,87行 …

C-Styleでmath.hなど(その2)

C-Codeを使えば三角関数も使える。ただし、遅い。 速度を単純に上げたいなら、より速いマイコンボードに替えるのが楽だと思う。TJ3Bを使いたいなら、プログラムを工夫するしかない。 速度にこだわるのは、理由がある。ロボットのスピードが毎秒1mとすると、0…

TJ3Bマニュアル

新しいC-Styleに合わせた更新が行われた模様。 http://www.daisendenshi.com/download/ TJ3B組立説明書 TJ3B_SetupManual-160520.pdf TJ3B C-Style導入編 TJ3B_C-StyleManual_1-161015.pdf TJ3B C-Style操作編 TJ3B_C-StyleManual_2-161015.pdf TJ3B C-Style…

C-Styleでmath.hなど

C-StyleのV160827版では、ビルドパスのD_Main.hに「#include 」が記述されているので、プログラム中のC-Code上でmath.hで定義された関数を使うことができる。 C:\Daisen\C-Style for TJ3B V160827\Build\mcc18_v337\h\math.h 各関数でできることは一般的なC…

I2C超音波センサーアダプター(その2)

前回の結果はこちら。 HC-SR04改(TRIG-ECHO間に2.2KΩ、TRIGを信号線に接続)を4つ使用。▼TJ3B本体で超音波センサを使った場合。 ▼I2C超音波センサーアダプターを使った場合。 4〜6行目をC-CodeでgUssを使い書き直せばE=5程度までさらに減らせた。 上記のよ…

I2C超音波センサーアダプター

ダイセン工業の「αエクスプローラ」で超音波センサを使う場合、「I2C超音波センサーアダプター」が必要になるが、TJ3Bでも使うことができる。 Setupで4chUSSが表示されない場合は、C-Styleを最新版に更新する。 http://www.daisendenshi.com/download/ アダ…

基板外注 その3

Elecrowより基板が届く。 10/20 午前注文 10/25 昼 配達確認メール届く 10/26 到着 配送方法 DHL こんな袋で届いた。 袋の中はダンボールと書類。中身の基板はエアキャップで保護されている。 今回は面取りオプションを追加してみた。 基板は12枚入っていた…

ROBO-ONE

ROBO-ONEのレギュレーションを探す。次回の第30回ROBO-ONEのものはまだ公開されていないようで、前回の第29回ROBO-ONEのレギュレーションが見つかった。まずは熟読する。 http://www.robo-one.com/ http://www.robo-one.com/upload/roboones/17_2a7a5b0aa922…

基板外注 その2

Elecrowより出荷したとのメールあり。メールには注文内容の印刷物と今回の納品物を撮影した写真の添付があった。 DHLの荷物追跡ではすでに日本に着いている。 10/20 午前に注文 10/25 午後に大阪

PID制御(訂正)

id:ohguma:20161014 で紹介した IchigoJamライントレーサは少し前のトラ技に詳細な記事が掲載されている。 トランジスタ技術 2016年9月号 光センサとモータで自動走行!ライトレース・ロボットの製作 2016年10月号 Ichigoライントレーサの追従走行プログラミ…

基板外注

Frizing でも可能との情報をググれたので Elecrow に基板を外注してみた。 Fritzing Fritzing Elecrow.com® Custom PCB Assembly, Fabrication and DIY Electronics 注文時の基板データはこれ。 IR1は TSSP4038 を想定。 基板サイズは 25 x 20 mm 裏面はベタ…

基板エディタ

Frizingでも基板外注できるようなので、データ作成中。標準添付のリモコン受光モジュールではサイズが合わず悩んだが、こちらのInfrared Receiverを使う。 http://www.homautomation.org/fritzing-parts/

ものづくりフェスタ

四国職業能力開発大学校で行われた「ものづくりフェスタ」に参加した。 相変わらずのロボット操縦体験で、ロボックマ、キイロボトリ、けんけつちゃんロボの3台が子供にいじられた。諸事情でコロボックマは展示のみ。ハード故障ではないので次の体験会には元…

IchigojamでPD制御

先日のPID制御の記事を書く数ヶ月前、Facebook「IchigoJam-FAN公開グループ」で Ichigojamで作られたPD制御のライントレーサーのプログラムを公開された方がおらた。 https://www.facebook.com/groups/ichigojam/permalink/742004269272662/ 11行のBASICのプ…

C-StyleでPID制御

(参考:Wikipedia「PID制御」)先日のPI制御のプログラムを手直ししてPID制御に変更する。 D制御要素の追加 前回ループ時と今回ループ時の差分を変数「C」に代入(27行目) 今回ループ時の偏差を次回ループ時に利用するため変数「V」に代入(28行目) 操作…

(2017-02-02追記) 31行に誤りがあります。C=N*C

C-StyleでPI制御

先日のP制御の比例ゲインはプログラム中に直接記述していたので、変数「K」で設定するようにした。さらにプログラムをPI制御に変更してみる。 (Wikipedia「PID制御」よりPI制御) 積分要素を追加するために、 変数W 偏差「X」の積分値 変数L 積分ゲイン 変…

C-StyleでP制御(比例制御) その2

先日のプログラムを(Wikipedia「PID制御」よりP制御)の式に当てはめると、 操作量 u(t) → 10行目の変数A(モーター値) 出力値 y(t) → 6行目の変数Z(ループ内での今の向き) 目標値 r(t) → 3行目の変数Y(スタート時の向き) 比例ゲイン Kp → 9,10行目の…

C-StyleでP制御(比例制御)

基本的なフィードバック制御として比例制御(P制御)がある。これは操作量を制御量と目標値の偏差の一次関数として制御するものである。 (Wikipedia「PID制御」よりP制御) コンパスセンサの値を回転の制御に使う場合、計測値をどう制御量として計算するか…

C-StyleでOn-Off制御

「テイクテック 第9回目標にあわせる」で紹介されているフィードバック制御をC-Styleで意識してみる。 識者のツッコミを期待します。 スタート時の向きを維持する次のサンプルプログラムをもとにいろいろ試していく。 今回紹介するのは、コンパスセンサの計…

NHK教育 テイクテック

ロボカップを始めて間もない選手にオススメの番組がこちら。 新聞番組欄では最終回となっていたがネット視聴もできるので、ぜひ。http://www.nhk.or.jp/gijutsu/taketech/ 番組中の「テクノロジーの三要素 S・C・A」の歌を是非聞いてほしい。。 S : Sensor …

レーザー加工機

しばらく前に入手していたレーザー加工機をまじめに調整する。購入先はAliExpressで、購入したのは、この5.5Wのモデル。ちなみに、加工機そのものの加工精度は素人目にもいい加減で、ネジ穴のセンターが出ていなかったりもするので、あまりオススメはできな…

HMC6352が生産停止

先日TwitterでHMC6352が生産停止という話を聞き、調べると digi-keyで部品状況が「生産中止品」になっていた。 HMC6352-TR Honeywell Aerospace | センサ、トランスデューサ | DigiKey ダイセンのネットストアでは、しばらく前にデジタルコンパスモジュール …

サンプルプログラム

C-Styleをインストールすると、サンプルプログラムもついてくる。 「CStyleTj3B_V160827」版ならインストール先が初期値のままであれば「C:\Daisen\C-Style for TJ3B V160827\User_TJ3B」の中にいろいろあるので、一通り確認しておく。 以下は「DirSensor」…