MIRSMG4 管理台帳へ戻る

名称 Raspberry Pi ソフトウェアのテストプログラム
番号 MIRSMG4D-SOFT-0009
版数 最終更新日 作成 承認 改訂記事
A01 2023.06.15 牛丸真司 牛丸真司 初版

Rasspberyy Pi ソフトウェアのテストプログラム

Rsspberry Pi の標準プログラムにでは、テスト毎にテストプログラム(test_*.c)を用意している。 make すると、テストに対応する実行ファイル(test_*)が作成される。 テストプログラムを追加するする場合は、既存のテストプログラムを参考に Makefile にテスト用のソースファイルを追加する。 ファイル分割されており、 test タブ(test.ino)に試験関数が定義されいる。
ファイル名     説明          備考
test_io.c GPIOの H/L のテスト GPIO接続されたタッチセンサ等のデバイスの電圧値のH/Lを読み取り、その結果をコンソールが画面にHを1、Lを0として表示する。
ディフォルトでは 4,7,8 ピンに接続した3つのタッチセンサの信号を表示するようにしている。
test_ucc.c 超音波センサの距離計測 2つのUSSから対象物体までの距離を計測し、それぞれの計測値を表示する。単位は[cm]。
2つの超音波センサは異なるI2Cアドレスに設定しておく必要がある。
uss.c 中のI2Cをアドレスは、それぞれの超音波センサのアドレスとと同じに設定する。 (ディフォルトでは 0x70 と 0x71)
test_camera.c カメラ画像の表示テスト テストプログラム入力後に、カメラのデバイス番号を入力する。(0が1台目、1が2代目)
GUI環境で実行する必要がある。
test_capture.c カメラ画像の取り込み 画像 snap.jpg は img ディレクトリに保存される。
テストプログラム入力後に、カメラのデバイス番号を入力する。(0が1台目、1が2代目)
プログラム実行中にキャプチャ―画像を表示させるには get_img.h の #define __GET_IMG_DEBUG__ の行を有効にする。
Corrupt JPEG data: 1 extraneous bytes before marker 0xd1 のメッセージは Warning であり動作に支障はない。
test_number.c 数字認識テスト 数字ボードまでの距離を指定して、ボード上の数字を認識する
テストプログラム入力後に、カメラのデバイス番号を入力する。(0が1台目、1が2代目)
プログラム実行中に途中の処理画像を表示させるには number.h の #define __NUMBER_DEBUG__ の行を有効にする。
Corrupt JPEG data: 1 extraneous bytes before marker 0xd1 のメッセージは Warning であり動作に支障はない。
number_detect.cpp 中の rang の値を変更して数字画像の抽出条件を調整する。range の値は1以上に設定する(1が抽出 条件が最も厳しく、値を大きくする程緩くなる)
test_direction.c 正対補正動作のテスト プログラム実行中に正対補正中の左右の超音波センサ値を表示させるには direction.h の #define __DIRECTION_DEBUG__ の行を有効にする。
direction.c 中で正対補正の終了条件として、左右それぞれの超音波センサによる検出距離の差(絶対値)の許容値を設定する。単には[cm]で、通常は 0, 1, 2 のいずれかで設定する。左右の超音波センサに誤差がないとすれば、差の許容値は 0 とすべきだが、その場合補正が終了しないリスクがある。また許容値を大きく取ると、十分な正対をせずにこの動作を終了するリスクがある。
test_dir_num.c 正対補正と数字認識 正対補正から数字認識を連続して行う。
指定距離まで移動(前進または後退)し正対補正を行ったあと、数字認識を行う。
test_request.c Arduinoとの通信試験 通信速度は 115200 bps としている。Arduino 側もこの値に設定しておく必要がある