TOPに戻る

コンテックRAS/RTC Raspberry Pi ボードを使う②サンプル・プログラムを動かす

 前回、ダウンロードしたサンプル・プログラムをコンパイルしました。Downloadsフォルダに入ったままだと違和感があるので、contecというフォルダを作り、ファイル・マネージャでコピーをします。

サンプル・プログラムdio

 ターミナルを開き、dioプログラムの入っているディレクトリまでおります。

~/contec/samples/console_samples/dio

 dioは、入出力ポートが出ている10ピンのコネクタを扱います。実行します。

./dio

 解説は、

/home/pi/contec/help/jp

に入っているcorashelp.htmを起動します。dioをクリックします。

 汎用入出ポートの状態を取得と書かれていますが、読み出しと書き込みができます。

 引数なしで実行すると、実行オプションが表示されますと説明されていますが、そうではないようです。

  リファレンスマニュアル | CPI-RAS [日本語]

をダウンロードします。執筆時点では2021/05/19版でした。

インターフェース・コネクタ

ピン番号 信号名 内容
1 DO- ほかの機器の入力信号の(-)側に接続
2 DO+ ほかの機器の入力信号の(+)側に接続
3 DI1- ほかの機器の出力信号の(-)側に接続
4 DI1+ ほかの機器の出力信号の(+)側
5 DI0- ほかの機器の出力信号の(-)側に接続
6 DI0+ ほかの機器の出力信号の(+)側に接続
7 5V外部電源- 5V±5%電圧が出力される。外部電源の(-)側に接続
8 5V外部電源+ 5V±5%電圧が出力される。外部電源の(+)側に接続
9 8 - 28V外部電源- DC電源コネクタの入力電圧が出力される。外部電源の(-)側に接続
10 8 - 28V外部電源+ DC電源コネクタの入力電圧が出力される。外部電源の(+)側に接続

入力


 入力はDI1とDI0の二つです。等価回路は次のようになります。

./dio 0

は、読み出しです。ソース・プログラムdio.cを見ると、8ビット単位になっています。

◆入力に何もつながない

 実行結果 DIO port read [0]

◆ 4ピンと3ピンをつなぐ(DI1)

 実行結果 DIO port read [2]

◆ 6ピンと5ピンをつなぐ(DI0)

 実行結果 DIO port read [1]

◆ 4ピンと3ピンをつなぐ(DI1)、6ピンと5ピンをつなぐ(DI0)

 実行結果 DIO port read [3]

電源ピン

 7-8ピンの「5V外部電源」と、9-10ピンの「8 - 28V外部電源」の電圧をテスタで測ります。

 どちらも0Vでした。

./dio 1 8
DIO port write [8]

 「5V外部電源」に5.04Vが出ました。「8 - 28V外部電源」は0Vです。

./dio 1 4
DIO port write [4]

 「5V外部電源」は0Vです。「8 - 28V外部電源」に24.0Vがでました。

./dio 1 0x0c
DIO port write [c]

 「5V外部電源」に5.04Vが、「8 - 28V外部電源」に24.0Vがでました。

 このときのマイナス側をテスタで計ると、

  • 3ピン DI1-
  • 5ピン DI0-
  • 7ピン 5V外部電源-
  • 9ピン 8 - 28V外部電源-

が共通であることがわかりました。出力の1ピンDO0-は共通グラウンドにつながっていません。

出力

 等価回路です。

./dio 1 1
DIO port write [1]

 LEDが点灯しました。消灯は次のコマンド実行できます。

./dio 1 0
DIO port write [0]

連載 コンテックRAS/RTC Raspberry Pi ボードを使う

(1) ドライバのインストール

(2) サンプル・プログラムを動かす

(3) RTCを動かす

(4) A-D変換ボード

(5) A-D変換ボードのAPIを使う