表紙

CAN マルチネットワークボード
取扱説明書 応用編
ルネサス製センサボード＋RA2L1
ルネサス エレクトロニクス社 RX231, RL78/F15, RA2L1 搭載
HSB シリーズ応用キット-本書を必ずよく読み、ご理解された上でご利用ください

株式会社
REV.1.0.0.0

目次

－目 次－
注意事項 ......................................................................................................................................................... 1
安全上のご注意 ............................................................................................................................................... 2
1.

2.

概要.......................................................................................................................................................... 4
1.1.

本書で説明するセンサに関して ................................................................................................................ 4

1.2.

CAN マルチネットワーク ソースコード CD に関して（追加分） ................................................................... 5

プログラムの動作 ...................................................................................................................................... 6
2.1. 空気系センサ ........................................................................................................................................... 6
2.1.1. ボード接続 ........................................................................................................................................ 6
2.1.2.

マイコンボードに書き込むプログラム ................................................................................................. 7

2.1.3.

PC 向けアプリケーションソフト ........................................................................................................... 8

2.2.

3.

酸素飽和度センサ ................................................................................................................................... 9

2.2.1.

ボード接続 ........................................................................................................................................ 9

2.2.2.

マイコンボードに書き込むプログラム ............................................................................................... 10

2.2.3.

PC 向けアプリケーションソフト ......................................................................................................... 10

マイコンボード向けプログラム ................................................................................................................... 12
3.1.

HSB_CAN_MULTI_3 の CAN パケット ................................................................................................. 12

3.1.1.

HSB_CAN_MULTI_3 のコマンド拡張 ............................................................................................. 12

3.1.2.

HSB_CAN_MULTI_3 のリモートフレーム応答 ................................................................................ 123.2.

HSB_CAN_MULTI_3 の SPI フラッシュメモリ保存データ ....................................................................... 14

3.2.1.

HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト.......................................................................... 14

3.2.2.

HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト.......................................................................... 14

3.3.

HSB_CAN_MULTI_3 のセンサ読み取りタイミング ................................................................................ 15

3.3.1.

HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト.......................................................................... 15

3.3.2.

HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト.......................................................................... 15

3.4.

HSB_CAN_MULTI_3 の STACK 設定 .................................................................................................... 16

3.4.1.

HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト.......................................................................... 16

3.4.2.

HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト.......................................................................... 18

3.5. HSB_CAN_MULTI_3 のセンサ値の取得 .............................................................................................. 19
3.5.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト.......................................................................... 19
3.6.

4.

5.

プログラムのビルド手順 ......................................................................................................................... 21

3.6.1.

HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト.......................................................................... 21

3.6.2.

HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト.......................................................................... 21

PC 向けアプリケーション .......................................................................................................................... 24
4.1.

空気系センサ(HSB_CAN_MULTI_DEMO3.EXE) .................................................................................. 244.2.

酸素飽和度センサ(HSB_CAN_MULTI_DEMO4.EXE) ........................................................................... 26

まとめ ..................................................................................................................................................... 27
CAN マルチネットワークボード取扱説明書

株式会社

取扱説明書改定記録 ....................................................................................................................................... 28
お問合せ窓口................................................................................................................................................... 28

注意事項
本書を必ずよく読み、ご理解された上でご利用ください【ご利用にあたって】
1. 本製品をご利用になる前には必ず取扱説明書をよく読んで下さい。また、本書は必ず保管し、使用上不明な点がある場合は再読し、よく理解して使用して下さい。
2. 本書は株式会社北斗電子製マイコンボードの使用方法について説明するものであり、ユーザシステムは対象ではありません。
3. 本書及び製品は著作権及び工業所有権によって保護されており、全ての権利は弊社に帰属します。本書の無断複写・複製・転載はできません。
4. 弊社のマイコンボードの仕様は全て使用しているマイコンの仕様に準じております。マイコンの仕様に関しましては製造元にお問い合わせ下さい。弊社製品のデザイン・機能・仕様は性能や安全性の向上を目的に、予告無しに変更することがあります。また価格を変更する場合や本書の図は実物と異なる場合もありますので、御了承下さい。
5. 本製品のご使用にあたっては、十分に評価の上ご使用下さい。
6. 未実装の部品に関してはサポート対象外です。お客様の責任においてご使用下さい。

【限定保証】
1. 弊社は本製品が頒布されているご利用条件に従って製造されたもので、本書に記載された動作を保証致します。
2. 本製品の保証期間は購入戴いた日から１年間です。

【保証規定】
保証期間内でも次のような場合は保証対象外となり有料修理となります
1. 火災・地震・第三者による行為その他の事故により本製品に不具合が生じた場合
2. お客様の故意・過失・誤用・異常な条件でのご利用で本製品に不具合が生じた場合
3. 本製品及び付属品のご利用方法に起因した損害が発生した場合
4. お客様によって本製品及び付属品へ改造・修理がなされた場合【免責事項】
弊社は特定の目的･用途に関する保証や特許権侵害に対する保証等、本保証条件以外のものは明示・黙示に拘わらず一切の保証は致し兼ねます。また、直接的・間接的損害金もしくは欠陥製品や製品の使用方法に起因する損失金・費用には一切責任を負いません。損害の発生についてあらかじめ知らされていた場合でも保証は致し兼ねます。
ただし、明示的に保証責任または担保責任を負う場合でも、その理由のいかんを問わず、累積的な損害賠償責任は、弊社が受領した対価を上限とします。本製品は「現状」で販売されているものであり、使用に際してはお客様がその結果に一切の責任を負うものとします。弊社は使用または使用不能から生ずる損害に関して一切責任を負いません。
保証は最初の購入者であるお客様ご本人にのみ適用され、お客様が転売された第三者には適用されません。よって転売による第三者またはその為になすお客様からのいかなる請求についても責任を負いません。
本製品を使った二次製品の保証は致し兼ねます。

CAN マルチネットワークボード取扱説明書

株式会社

1

安全上のご注意
製品を安全にお使いいただくための項目を次のように記載しています。絵表示の意味をよく理解した上でお読み下さい。

表記の意味
取扱を誤った場合、人が死亡または重傷を負う危険が切迫して生じる可能性がある事が想定される取扱を誤った場合、人が軽傷を負う可能性又は、物的損害のみを引き起こすが可能性がある事が想定される

絵記号の意味一般指示

一般禁止

使用者に対して指示に基づく行為を強制するものを示します

一般的な禁止事項を示します

電源プラグを抜く

一般注意

使用者に対して電源プラグをコンセントから抜くように指示します

一般的な注意を示しています

以下の警告に反する操作をされた場合、本製品及びユーザシステムの破壊・発煙･発火の危険があります。マイコン内蔵プログラムを破壊する場合もあります。
1. 本製品及びユーザシステムに電源が入ったままケーブルの抜き差しを行わないでください。
2. 本製品及びユーザシステムに電源が入ったままで、ユーザシステム上に実装されたマイコンまたはＩＣ等の抜き差しを行わないでください。
3. 本製品及びユーザシステムは規定の電圧範囲でご利用ください。
4.

本製品及びユーザシステムは、コネクタのピン番号及びユーザシステム上のマイコンとの接続を確認の上正しく扱ってください。

発煙･異音･異臭にお気付きの際はすぐに使用を中止してください。
電源がある場合は電源を切って、コンセントから電源プラグを抜いてください。そのままご使用すると火災や感電の原因になります。

2

CAN マルチネットワークボード取扱説明書

株式会社

以下のことをされると故障の原因となる場合があります。
1. 静電気が流れ、部品が破壊される恐れがありますので、ボード製品のコネク
タ部分や部品面には直接手を触れないでください。
2. 次の様な場所での使用、保管をしないでください。
ホ コ リ が 多い 場所 、 長時 間 直 射日 光 があ たる 場 所 、 不 安定 な 場所 、
衝撃や振動が加わる場所、落下の可能性がある場所、水分や湿気の多い
場所、磁気を発するものの近く
3. 落としたり、衝撃を与えたり、重いものを乗せないでください。
4. 製品の上に水などの液体や、クリップなどの金属を置かないでください。
5. 製品の傍で飲食や喫煙をしないでください。
ボード製品では、裏面にハンダ付けの跡があり、尖っている場合があります。
取り付け、取り外しの際は製品の両端を持ってください。裏面のハンダ付け跡
で、誤って手など怪我をする場合があります。

CD メディア、フロッピーディスク付属の製品では、故障に備えてバックアップ（複製）をお取りください。
製品をご使用中にデータなどが消失した場合、データなどの保証は一切致しかねます。
アクセスランプがある製品では、アクセスランプ点灯中に電源の切断を行わないでください。
製品の故障や、データの消失の原因となります。

本製品は、医療、航空宇宙、原子力、輸送などの人命に関わる機器やシステム
及び高度な信頼性を必要とする設備や機器などに用いられる事を目的として、設計及び製造されておりません。
医療、航空宇宙、原子力、輸送などの設備や機器、システムなどに本製品を使用され、本製品の故障により、人身や火災事故、社会的な損害などが生じても、弊社では責任を負いかねます。お客様ご自身にて対策を期されるようご注意ください。

CAN マルチネットワークボード取扱説明書

株式会社

3

1. 概要本書では、CAN マルチネットワークボードとルネサス製のセンサボードとの組み合わせ例に関して説明します。

US082-FS3000EVZ（エアフローセンサ）

HSB_CAN_MULTI_3(RA2L1)

US082-OB1203EVZ（酸素飽和度・近接・照度・カラーセンサ）

US082-ZMOD4410EVZ（空気品質センサ）

QICOT-HS4001POCZ（温度・湿度センサ）

HSB_CAN_MULTI_3(RA2L1)と、上記センサの組み合わせて使用する方法を示します。

1.1. 本書で説明するセンサに関して
ルネサスエレクトロニクス社では、PmodTM を備えるセンサを多数販売しています。
※PmodTM は Digilent 社が規定したインタフェースです。
PmodTM インタフェースは、6 ピン（6×1 列）または 12 ピン（6×2 列）のコネクタを持つインタフェースで、基板の幅や信号配列等が規定されており、マイコンボードにセンサ等を接続する際に便利です。
HSB_CAM_MULTI_3 ボードは、J9 に、PmodTM Type-6A のコネクタを設けており、ルネサス製の Type-6A のセンサボードを接続する目的で利用できます。
Type-6A は、拡張 I2C のインタフェースで、センサボードの多数がこのタイプのインタフェースとなっています。

4

CAN マルチネットワークボード取扱説明書

株式会社本書では、・室内空気品質センサ US082-ZMOD4410EVZ
ルネサス製、ZMOD4410 を搭載。空気に含まれる有機化合物の濃度から、空気品質を判断するセンサ。
・温湿度センサ QICOT-HS4001POCZ
ルネサス製、HS4001 を搭載。温度と湿度を測定するセンサ。
・エアフローセンサ US082-FS3000EVZ
ルネサス製、FS3000 を搭載。エアフロー（空気の流速）を測定するセンサ
・酸素飽和度、近接、照度、カラーセンサ US082-OB1203EVZ
ルネサス製、OB1203 を搭載。血中の酸素飽和度や、物体の近接を判断、明るさや色合いを検出する光学センサ。
上記、4 種類のセンサを、HSB_CAN_MULTI ボードと組み合わせて使用する方法を示します。

1.2. CAN マルチネットワーク ソースコード CD に関して（追加分）「CAN マルチネットワーク ソースコード CD」に、以下の内容が含まれます。
フォルダ
EXTRA¥SENSORS¥RA

HSB_CAN_MULTI_EXT_SENSOR1.zip
HSB_CAN_MULTI_EXT_SENSOR2.zip

EXTRA¥SENSORS¥PC

HSB_CAN_MULTI_DEMO3¥
HSB_CAN_MULTI_DEMO4¥

空気系センサ(*1)用 RA2L1 向けプロジェクトフォルダ（e2studio アーカイブ）
OB1203(*2)用 RA2L1 向けプロジェクトフォルダ（e2studio アーカイブ）
HSB_CAN_MULTI_DEMO3.exe プロジェクトフォルダ(VisualC#)(*3)
HSB_CAN_MULTI_DEMO4.exe プロジェクトフォルダ(VisualC#)(*4)(*1)(*3) 3 種類の空気系センサ US082-FS3000EVZ, QICOT-HS4001POCZ, US082-ZMOD4410EVZ を取り扱う
プロジェクトです。
(*2)(*4) US082-OB1203EVZ を取り扱うプロジェクトです。

CAN マルチネットワークボード取扱説明書

株式会社

5

2. プログラムの動作
2.1. 空気系センサ
2.1.1. ボード接続
PC の USB 端子に接続

HSB_CAN_MULTI_4

HSB_CAN_MULTI_3(RA2L1)

Pmod センサボード

HSB_CAN_MULTI_4（搭載マイコンはどのタイプでも可）と HSB_CAN_MULTI_3(RA2L1)(*1)を接続。
HSB_CAN_MULTI_3 の J9 コネクタに、・US082-FS3000EVZ
・QICOT-HS4001POCZ・US082-ZMOD4410EVZを接続する。（3 種類全て接続しても良いですし、いずれか 1~2 種類を接続しても問題ありません。複数台接続する
場合は、どの順番で接続しても問題ありません。）※HSB_CAN_MULTI_4 または HSB_CAN_MULTI_3 のどちらかのボードに電源を供給してください※CAN バスに、HSB_CAN_MULTI_1, HSB_CAN_MULTI_2 が接続されていても問題ありません（最低限動作を確認するのに、HSB_CAN_MULTI_3(RA2L1)と HSB_CAN_MULTI_4 が必要です。）(*1)本資料では、HSB_CAN_MULTI_3(RA2L1)を使用する例に関して説明しています6

CAN マルチネットワークボード取扱説明書

株式会社

－HSB_CAN_MULTI_3 のジャンパ設定－
JP1
本ボードが CAN バスの端になる場合ショート

JP5
SPI フラッシュメモ
リを使用する場合
ショート

Pmod センサボードを
接続（Type-6A のもの）

JP4
3.3V の I2C デバイ
スを使用する場合
左側ショートJP6, JP7
ボード搭載の I2C 温度センサを使用する場合ショート※ボード搭載センサと外部センサは同時に使用する事が可能ですHSB_CAN_MULTI_3 ボードで設定が必要なジャンパを示します。今回使用するセンサは、3.3V で動作するものですので、JP4 を左側（1-2 ショート）に設定します。

2.1.2. マイコンボードに書き込むプログラム
HSB_CAN_MULTI_3(RA2L1)には、
HSB_CAN_MULTI_EXT_SENSOR1.srec
を書き込んでください。（出荷時に書き込まれている、通常のプログラムでは外部接続のセンサに対応していません。）
上記ファイルは、当社 Web ページに掲載されています。また、CAN マルチネットワーク ソースコード CD 内の
HSB_CAN_MULTI_EXT_SENSOR1.zip
を展開すると、その中に含まれています。

CAN マルチネットワークボード取扱説明書

株式会社

7

他のマイコンボード（HSB_CAN_MULTI_4 等）は、出荷時に書き込まれている、通常の HSB_CAN_MULTI 向けのプログラムが書き込まれていれば問題ありません。（出荷時に書き込まれているプログラムは、当社 Web ページよりダウンロードできます。）

2.1.3. PC 向けアプリケーションソフト
HSB_CAN_MULTI_DEMO3.exe を実行してください（当社 Web ページに掲載されています、CAN マルチネットワ
ーク ソースコード CD にも含まれています。）(1)HSB_CAN_MULTI_4
が接続されている
COM ポートを選択

(2)
(1)

(2)COM ポートを開いて接続(3)接続しているボードにチェックを入れる(4)(3)(4)センサの起動を行う
ZMOD4410（空気品質センサ）の値
計測開始後値が出るまで 5 分程度掛かります
HS3000（エアフローセンサ）の値

HS4001（温度・湿度センサ）の値

HSB_CAN_MULTI_3 ボード搭載
センサの値

ボード上の SPI フラッシュメモリにデータを記録&ファイルとして保存

8

CAN マルチネットワークボード取扱説明書

株式会社

センサ値記録 ON（ラジオボタンで選択）
実行
SPI フラッシュ保存を行った場合、測定データ（デフォルトでは 1 秒毎）を HSB_CAN_MULTI_3 ボード上のフラッシュメモリに保存して、CSV 形式での出力が可能です。

2.2. 酸素飽和度センサ
2.2.1. ボード接続

HSB_CAN_MULTI_4
PC の USB 端子に接続

HSB_CAN_MULTI_3(RA2L1)

US082-OB1203EVZ

HSB_CAN_MULTI_4（搭載マイコンはどのタイプでも可）と HSB_CAN_MULTI_3(RA2L1)(*1)を接続。
HSB_CAN_MULTI_3 の J9 コネクタに、
CAN マルチネットワークボード取扱説明書

株式会社

9

・US082-OB1203EVZを接続する。（本アプリケーションでは、センサは 1 種類のみ接続する事を想定しています）※HSB_CAN_MULTI_4 または HSB_CAN_MULTI_3 のどちらかのボードに電源を供給してください※CAN バスに、HSB_CAN_MULTI_1, HSB_CAN_MULTI_2 が接続されていても問題ありません（最低限動作を確認するのに、HSB_CAN_MULTI_3(RA2L1)と HSB_CAN_MULTI_4 が必要です。）(*1)本資料では、HSB_CAN_MULTI_3(RA2L1)を使用する例に関して説明しています－HSB_CAN_MULTI_3 のジャンパ設定－
2.1.1 を参照してください。（空気系センサを使う場合と、ジャンパ設定は同一です）

2.2.2. マイコンボードに書き込むプログラム
HSB_CAN_MULTI_3(RA2L1)には、CAN マルチネットワーク ソースコード CD 内の
HSB_CAN_MULTI_EXT_SENSOR2.zip
を展開して、プログラムをビルドして生成した、

HSB_CAN_MULTI_EXT_SENSOR2.srec
を書き込んでください。（出荷時に書き込まれている、通常のプログラムでは外部接続のセンサに対応していません。）※プログラムのビルド方法は後程説明します。
他のマイコンボード（HSB_CAN_MULTI_4 等）は、出荷時に書き込まれている、通常の HSB_CAN_MULTI_4 向けのプログラムが書き込まれていれば問題ありません。（出荷時に書き込まれているプログラムは、当社 Web ページ
よりダウンロードできます。）

2.2.3. PC 向けアプリケーションソフト
HSB_CAN_MULTI_DEMO4.exe を実行してください（当社 Web ページに掲載されています、CAN マルチネットワ
ーク ソースコード CD にも含まれています。）
10

CAN マルチネットワークボード取扱説明書

株式会社

(2)
(1)
(1)HSB_CAN_MULTI_4
が接続されている
COM ポートを選択(2)COM ポートを開いて接続

センサの読み取り値

ボード上の SPI フラッシュメモリにデータを記録&ファイルとして保存

センサ値記録 ON（ラジオボタンで選択）
実行
SPI フラッシュ保存を行った場合、測定データをメモリに保存して、CSV 形式での出力が可能です。

CAN マルチネットワークボード取扱説明書

株式会社

11

3. マイコンボード向けプログラム
3.1. HSB_CAN_MULTI_3 の CAN パケット
3.1.1. HSB_CAN_MULTI_3 のコマンド拡張
HSB_CAN_MULTI_3 に対する CAN パケットで送信するコマンドに、外部センサのデータを出力するコマンドと外部センサを起動・停止するコマンドを追加しています。
ボード
HSB_CAN_MULTI_3

1 バイト目（コマンド）
0x04

2 バイト目~備考-- -- -- -- -- -- --0x04

YY -- -- -- -- -- --0x05

YY YY YY -- -- -- --0x06

YY YY YY ZZ ZZ ZZ ZZ

0x07-- -- -- -- -- -- --0x08

YY -- -- -- -- -- --

0x09
0x0A

YY -- -- -- -- -- -YY -- -- -- -- -- --センサ値読み出しコマンド[従来仕様]
リモートフレーム応答（後述）で、センサ値を送信する
2~8 バイト目は未使用
センサ値読み出しコマンド[変更]リモートフレーム応答（後述）で、センサ値を送信する
YY: 読み出すセンサのスレーブアドレス（0x00 は内蔵センサ）
3~8 バイト目は未使用
SPI フラッシュ読み出しコマンド
adr=YYYYYY のデータをリモートフレーム応答で送信
5~8 バイト目は未使用
SPI フラシュ書き込みコマンド
addr=YYYYYY に ZZ ZZ ZZ ZZ（4 バイト）のデータを書き込む
SPI フラッシュ消去コマンド
SPI フラッシュの全消去を行う
2~8 バイト目は未使用
SPI フラッシュ記録モード設定
YY=0: センサデータを SPI フラッシュに記録停止
YY=1: センサデータを SPI フラッシュに記録開始
3~8 バイト目は未使用
スレーブアドレス YY のセンサを起動[新設]
スレーブアドレス YY のセンサを停止[新設]

3.1.2. HSB_CAN_MULTI_3 のリモートフレーム応答・センサ値読み出しコマンド(0x04, 0x00)に対する応答[従来どおり]
ボード
HSB_CAN_MULTI_3

バイト位置
1~2 バイト目

送信内容
明るさセンサの値

3~4 バイト目

温度センサの温度値

備考
0~4095 の A/D 変換結果を 2 バイトで送信(0x0000~0x0FFF)※RL78/F15 の場合は 0~1023(0x0000~0x03FF)
温度（摂氏）値の 100 倍を 2 バイトで送信
23.5℃の場合、100 倍した 2350→0x092E を送信※4 バイト目~は 0x00 埋め

12

CAN マルチネットワークボード取扱説明書

株式会社

・ZMOD4410 センサ値読み出しコマンド(0x04, 0x32)に対する応答[新設]ボード
HSB_CAN_MULTI_3

バイト位置
1 バイト目

送信内容
センサ読み取り関数の戻
り値

2 バイト目

IAQ 値（空気品質指標）

3~4 バイト目

TVOC 値（有機化合物含有量）

5~6 バイト目

ETOH 値（有機化合物のエタノー
ル換算値）
ECO2 値（二酸化炭素:換算値）

7~8 バイト目

備考
0:正常終了1:センサ安定待ち
2~:エラー
IAQ 値の 10 倍を 1 バイトで送信
1.5 場合、10 倍した 15→0xF を送信
TVOC 値[mg/m3]の 1000 倍を 2 バイトで送信
10.5 場合、1000 倍した 10500→0x2904
を送信
ETOH 値[ppm]の 1000 倍を 2 バイトで送信
10.5 場合、1000 倍した 10500→0x2904
を送信
ECO2 値[ppm]を 2 バイトで送信
420 場合、420→0x01A4 を送信※0x32 は、ZMOD4410 のスレーブアドレス
・FS3000 センサ値読み出しコマンド(0x04, 0x28)に対する応答[新設]ボード
HSB_CAN_MULTI_3

バイト位置
1 バイト目
2~3 バイト目

送信内容
センサ読み取り関数の戻
り値
風速値

備考
0:正常終了1~:エラー
風速値[m/s]の 100 倍を 2 バイトで送信
1.5 場合、100 倍した 150→0x0096 を送信※0x28 は、FS3000 のスレーブアドレス
・HS4001 センサ値読み出しコマンド(0x04, 0x54)に対する応答[新設]ボード
HSB_CAN_MULTI_3

バイト位置
1 バイト目
2~3 バイト目

送信内容
センサ読み取り関数の戻
り値
温度値

4~5 バイト目

湿度値

備考
0:正常終了1~:エラー
温度（摂氏）値の 100 倍を 2 バイトで送信
23.5℃の場合、100 倍した 2350→0x092E を送信
湿度値[%]の 100 倍を 2 バイトで送信
50.1%の場合、100 倍した 5010→0x1392 を送信※0x54 は、HS4001 のスレーブアドレス
・OB1203 センサ値読み出しコマンド(0x04, 0x53)に対する応答[新設]ボード
HSB_CAN_MULTI_3

バイト位置
1 バイト目
2 バイト目
3 バイト目
4~5 バイト目

送信内容
心拍数
SPO2
呼吸数
PI 値

備考
心拍数[min-1]を 1 バイトで送信
酸素飽和度[%]を 1 バイトで送信
呼吸数[min-1]を 1 バイトで送信PI 値を 10,000 倍した値を 2 バイトで送信
0.052 の場合、10,000 倍した 520→0x0208 を送信※0x53 は、OB1203 のスレーブアドレス※8 バイトに満たないデータは 0x00 埋め※ZMOD4410, FS3000, HS4001 の応答は、HSB_CAN_MULTI_EXT_SENSOR1 プロジェクトで有効※OB1203 の応答は、HSB_CAN_MULTI_EXT_SENSOR2 プロジェクトで有効

CAN マルチネットワークボード取扱説明書

株式会社

13

3.2. HSB_CAN_MULTI_3 の SPI フラッシュメモリ保存データ
3.2.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト
PC 用のアプリケーションソフト（HSB_CAN_MULTI_DEMO3.exe）から「センサ値記録 ON」を実行した場合、SPI
フラッシュメモリには、下記データが保存されます。
4 系統のセンサ（ZMOD4410, FS3000, HS40001, ボード搭載センサ）で、各 8 バイト。1 回の記録で 32 バイトのデータが記録されます。
addr
0x0
0x10
0x20

data
X0
X1
Z0
Z1
X0
X1

X2
Z2
...

X3
Z3

X4
Z4

X5
Z5

X6
Z6

X7
Z7

Y0
I0

Y1
I1

Y2
I2

Y3
I3

Y4
I4

Y5
I5

Y6
I6

Y7
I7

X0~X7: ZMOD4410 のデータ 3.1.2 に示す 8 バイトのデータ
Y0~Y7: FS3000 のデータ 3.1.2 に示す 3 バイトのデータ、Y4~Y7=0x00
Z0~Z7: HS4001 のデータ 3.1.2 に示す 5 バイトのデータ、Z5~Z7=0x00
I0 ~ I7: ボード搭載センサのデータ 3.1.2 に示す 4 バイトのデータ、I4~I7=0x00

3.2.2. HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト
PC 用のアプリケーションソフト（HSB_CAN_MULTI_DEMO4.exe）から「センサ値記録 ON」を実行した場合、SPI
フラッシュメモリには、下記データが保存されます。
OB1203 センサ 1 回の記録で 8 バイトのデータが記録されます。
addr
0x0

data
X0
X1

X2

X3

X4

X5

X6

X7

X0

X1

...

X0~X7: OB1203 のデータ 3.1.2 に示す 6 バイトのデータ, X6~X7=0x00※本プロジェクトでは、ボード搭載センサ（温度センサ、明るさセンサ）の情報は記録されません

14

CAN マルチネットワークボード取扱説明書

株式会社

3.3. HSB_CAN_MULTI_3 のセンサ読み取りタイミング
3.3.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト
HSB_CAN_MULTI_EXT_SENSOR1 プロジェクトでは、50ms タイマ（GPT8)で、センサにアクセスしています。
(1)ボード搭載温度センサ(2)FS3000（エアフローセンサ）(3)HS4001（温湿度センサ）
は、500ms 間隔でセンサの読み取りを行っています。

(4)ZMOD4410（空気品質センサ）
は、センサに読み出し信号を送信、3 秒後に測定データを回収という動作をさせています。
上記全体の動作を 5 秒（50ms×100）を 1 サイクルとして動作させています。(1)~(3)のセンサは、5 秒間に 10 回の読み取り、(4)は 5 秒間に 1 回の読み取り。

3.3.2. HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト
HSB_CAN_MULTI_EXT_SENSOR2 プロジェクトでは、10us タイマ（GPT9)で、デモプログラム（ルネサス社のサンプルプログラム）を呼び出しています。

CAN マルチネットワークボード取扱説明書

株式会社

15

3.4. HSB_CAN_MULTI_3 の stack 設定
3.4.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト

FS3000, HS4001, ZMOD4410にアクセスする stack

ボード上搭載の I2C 温度センサにアクセスする stack

GPT7: 500ms タイマ
GPT8: 50ms タイマ
SPI0: SPI フラッシュメモリのアクセスに使用
ADC0: 明るさセンサの読み取りに使用
UART9: HSB_CAN_MULTI_3 では未使用

I2C バスは別々な
stack 間で共有
I2C の物理 ch は 1 つ

FS3000, HS400X, ZMOD4XXX の 3 つの stack を追加しています。
同一 I2C のバスに 3 つのセンサを接続するので、I2C は Shared Bus の stack をぶら下げて、物理的な I2C の同
一 ch に接続するようにしています。

16

CAN マルチネットワークボード取扱説明書

株式会社

FS3000, HS4001, ZMOD4410 の各センサは、NewStack のSensor の下に存在しています。これらの Stack を追加すれば各センサが使用可能になります。

CAN マルチネットワークボード取扱説明書

株式会社

17

3.4.2. HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト

OB1203 にアクセスする stack

GPT7: 500ms タイマ
GPT8: 50ms タイマ
UART9: HSB_CAN_MULTI_3 では未使用
SPI0: SPI フラッシュメモリのアクセスに使用
GPT9: 10us タイマ

I2C バスは別々な
stack 間で共有
I2C の物理 ch は 1 つ

本プロジェクトでは、1 つのセンサ(OB1203)を、2 種類の用途（Proximity:指の近接検出, PPG:酸素飽和度の測定）で使用するため、OB1203 にアクセスする stack を 2 つ追加しています。

18

CAN マルチネットワークボード取扱説明書

株式会社

3.5. HSB_CAN_MULTI_3 のセンサ値の取得
3.5.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト
HS4001(温度、湿度センサ）の読み取り部分のソースコードを抜粋して示します。
・src/hs40001/hs40001.c（抜粋、一部変更）
float temp;
float humidity;
RM_HS400X_Read(&g_hs400x_sensor0_ctrl, &hs400x_raw_data);//(1)

err = RM_HS400X_DataCalculate(&g_hs400x_sensor0_ctrl, &hs400x_raw_data, &hs400x_data);
if (FSP_SUCCESS == err){
temp = hs400x_data.temperature.integer_part;
temp += hs400x_data.temperature.decimal_part / 100.0f;
humidity = hs400x_data.humidity.integer_part;
humidity += hs400x_data.humidity.decimal_part / 100.0f;
}

//(2)

temp は温度値
humidity は湿度値

(1)は、I2C を経由してセンサモジュールの測定値を取得する関数です。
(2)は、測定データ（生の値）を、温度（摂氏℃）、湿度(%)に変換する関数です。本関数は、温度値の「整数部(hs400x_data.temperature.integer_part)」と「小数部(hs400x_data.temperature.decimal_part)」に分けて算出まで行ってくれます。（湿度も同様）(1)(2)のどちらも FSP の API 関数として用意されていますので、ユーザプログラムとしては API 関数を呼び出すだ
けで、測定結果（温度℃, 湿度%）の値が得られます。
FSP の API 関数が用意されていない環境で、同様のプログラムを作成する場合
unsigned char cmd[HS4001_CMD_SIZE] = {HS4001_CMD_NO_HOLD_HUMIDITY_AND_TEMPERATURE_MEASUREMENT};//HS4001 に「温度と湿度を NO-HOLD モードで測定」コマンドを送信
ret = i2c_write(HS4001_SLAVE_ADDRESS, cmd, HS4001_CMD_SIZE, HS4001_TIMEOUT);[計測時間のウェイト]

0x54

0xF5

1

100us のウェイト
ret = i2c_read(HS4001_SLAVE_ADDRESS, recv_data, HS4001_DATA_SIZE, HS4001_TIMEOUT);

0x54

5

センサに、測定コマンド(0xF5)を送信、計測時間ウェイト後、データ読み出しを実行。

CAN マルチネットワークボード取扱説明書

株式会社

19

//CRC チェックfor (i=0; i<(HS4001_DATA_SIZE-1); i++){crc = crc ^ recv_data[i];for (j=0; j<8; j++){if ((crc & 0x80) != 0)//先頭ビットが 1{
crc = crc_poly ^ (crc << 1);
const unsigned char crc_poly = 0x1d;}
else{
crc = crc << 1;}}}
if (crc != recv_data[HS4001_DATA_SIZE-1]){
return I2C_ERROR_DATA;}

受信データの 5 バイト目が CRC データ//温度と湿度の計算
data[0] = recv_data[0] & 0x3F;
data[0] <<= 8;data[0] += recv_data[1];data[1] = recv_data[2] & 0x3F;
data[1] <<= 8;data[1] += recv_data[3];const float pow2_14_minus1 = 16383.0f;

humidity = (float)data[0] / pow2_14_minus1 * 100.0f;
temp = (float)data[1] / pow2_14_minus1 * 165.0f - 40.0f;

受信データの CRC チェックを実行（FSP の API 関数では行っている）。
2 バイトの受信データから、温度と湿度を計算。
上記は、FSP 関数が用意されていない、RX231 向けのセンサ値読み出しプログラムをスクラッチで書き下したもの（抜粋、一部変更）です。
HS40001 に送信するコマンドや、測定時間（NO_HOLD モードは測定中 I2C の SDA をホールドしないモードなので、測定中 I2C バスが開放されるが測定読み出しのタイミングはプログラム側で考慮する必要がある）、受信データの確認や、温度、湿度値への変換等、それなりに手間が掛かります。（データシートを読む必要があります。）
FSP を使った場合、センサの仕様を知らなくても、測定結果が容易に得られます。（プログラムするのは、非常に楽になります。）

20

CAN マルチネットワークボード取扱説明書

株式会社

3.6. プログラムのビルド手順
3.6.1. HSB_CAN_MULTI_EXT_SENSOR1 プロジェクト
HSB_CAN_MULTI_EXT_SENSOR1 は、空気系センサ（ZMOD4410：空気品質センサ、FS3000：エアフローセン
サ、HS4001:温湿度センサ）に対応したプロジェクトです。本プロジェクトをビルドする場合は、FSP4.4.0 が必要になります（2023/8 現在）。
※2023/8 時点の FSP の最新版は、4.5.0 となりますが、4.5.0 では ZMOD4410 の読み取りが出来ない事が確認されています（FS3000, HS4001 を使うのであれば、FSP4.5.0 の環境でも問題ありません）
FSP4.4.0 のワークスペースにアーカイブを展開してビルドしてください。

3.6.2. HSB_CAN_MULTI_EXT_SENSOR2 プロジェクト
HSB_CAN_MULTI_EXT_SENSOR2 プロジェクトは、酸素飽和度・近接・照度・カラーセンサ(OB1203)に対応した
プロジェクトです。
「CAN マルチネットワーク ソースコード CD」内に含まれるプロジェクトは、ルネサスエレクトロニクス社のアプリケー
ションノート（サンプルプログラム）を含まない形で格納されています。
「CAN マルチネットワーク ソースコード CD」内の HSB_CAN_MULTI_EXT_SENSOR2 プロジェクトに、ルネサス
エレクトロニクス社のアプリケーションノート、サンプルプログラム

R01AN6311JJ0103（r01an6311xx0103-ob1203.zip）を追加する事で、プログラムのビルド、実行ファイルの生成を行う事ができます。
※r01an6311xx0103-ob1203.zip は、ルネサスエレクトロニクス社の Web よりダウンロードしてください

CAN マルチネットワークボード取扱説明書

株式会社

21

(1)ルネサスエレクトロニクス社のサンプルプログラムの追加

HSB_CAN_MULTI_EXT_SENSOR2 のプロジェクトツリーの、src フォルダ以下に
r01an6311xx0103-ob1203.zipを展開した、

r01an6311xx0103-ob1203¥OB1203_RA6M4_NonOS¥src
以下の、
ob1203_bio フォルダ
RA_OB1203.cをコピーしてください。（hal_entry.c はコピーしないでください）

22

CAN マルチネットワークボード取扱説明書

株式会社

(2)ファイルの書き換え

オリジナル

書き換え後

コピーした、RA_OB1203.c の 32 行目
static volatile ob1203_bio_data_t

gs_ob1203_bio_data;の"static"を削除してください。
後は通常通り、プログラムのビルドを行い、Debug フォルダ内に生成される、

HSB_CAN_MULTI_EXT_SENSOR2.srec
ファイルを、HSB_CAN_MULTI_3(RA2L1)ボードに書き込んでください。

CAN マルチネットワークボード取扱説明書

株式会社

23

4. PC 向けアプリケーション
4.1. 空気系センサ(HSB_CAN_MULTI_DEMO3.exe)(a)(a)CAN バスにセンサの起動・停止を指示するパケットの送信
HSB_CAN_MULTI_4 ボードを通して、CAN バスに下記、3 つのパケットが送出されます。
ID
0x00000203
0x00000203
0x00000203

RTR
0
0
0

DATA
0x09 0x32 0x00 0x00 0x00 0x00 0x00 0x00
0x09 0x28 0x00 0x00 0x00 0x00 0x00 0x00
0x09 0x54 0x00 0x00 0x00 0x00 0x00 0x00

ID は、HSB_CAN_MULTI_3 に対する指示なので、HSB_CAN_MULTI_3 の ID を指定。
RTR=0：データフレーム

24

CAN マルチネットワークボード取扱説明書

株式会社左側のセンサ名のところにチェックが入っている場合は、DATA の先頭は 0x09（センサの起動を指示）、チェックが入っていない場合は、0x0A（センサの停止を指示）となります。
0x32 は US082-ZMOD4410EVZ の I2C スレーブアドレス。0x28 は、US082-FS3000EVZ のスレーブアドレス。
0x54 は、QICOT-HS40001POCZ のスレーブアドレスとなります。
HSB_CAN_MULTI_DEMO3.exe 起動後は、250ms 毎にセンサデータ取得のコマンドと、データを要求するリモー
トフレーム(RTR=1)を送出します。
・送出データ(1)(2)

ID
0x00000203
0x00000203

RTR
0
1

DATA
0x04 0x32 0x00 0x00 0x00 0x00 0x00 0x00

(1)は、US082-ZMOD4410EVZ のデータを送信するように設定。
(2)のリモートフレーム要求を HSB_CAN_MULTI_3 のボードが受け取ると、(1)で設定したスレーブアドレス 0x32 のデータ（US082-ZMOD4410EVZ の測定データ）を、CAN データフレームで送信します。
0x32 のところ（スレーブアドレス）は、250ms 毎に次のセンサのスレーブアドレスに入れ替えながら送信します。
起動していないセンサ（スレーブアドレス）の場合は、(1)(2)のデータ送信をスキップします。
※250ms 毎に 4 系統のセンサのデータを要求するので、センサデータの更新レートは 1 回/1s となります。
HSB_CAN_MULTI_3 ボードが CAN バスに対して送信したデータは、HSB_CAN_MULTI_4 経由で PC に送られて、測定データの画面更新が行われます。

CAN マルチネットワークボード取扱説明書

株式会社

25

4.2. 酸素飽和度センサ(HSB_CAN_MULTI_DEMO4.exe)

本アプリケーションは、1 系統のセンサデータしか扱いませんので、250ms 毎に、スレーブアドレス 0x53（US082OB1203EVZ のスレーブアドレス）のデータを送るように要求します。
・送出データ(1)(2)

ID
0x00000203
0x00000203

RTR
0
1

DATA
0x04 0x53 0x00 0x00 0x00 0x00 0x00 0x00

上記データを受け取った HSB_CAN_MULTI_3 ボードがセンサデータを CAN パケットで送信すると、
HSB_CAN_MULTI_4 を経由して PC 側でデータを受信。画面更新を行います。

26

CAN マルチネットワークボード取扱説明書

株式会社

5. まとめ
本資料では、ルネサス Pmod センサを HSB_CAN_MULTI_3(＋RA2L1)に接続して使用する方法に関して示しました。
RA の環境では、FSP にセンサの stack が用意されているので、簡単に測定が可能です。
本資料で取り上げたセンサ以外でも、使用できると思いますので、気になったセンサモジュールがありましたら、是非トライして頂きたいと思います。

CAN マルチネットワークボード取扱説明書

株式会社

27

取扱説明書改定記録
バージョン
REV.1.0.0.0

発行日
2023.8.3

ページ
―

改定内容
初版発行

お問合せ窓口
最新情報については弊社ホームページをご活用ください。
ご不明点は弊社サポート窓口までお問合せください。
株式会社〒060-0042 札幌市中央区大通西 16 丁目 3 番地 7
TEL 011-640-8800 FAX 011-640-8801
e-mail：support@hokutodenshi.co.jp (サポート用)、order@hokutodenshi.co.jp (ご注文用)
URL:https://www.hokutodenshi.co.jp

商標等の表記について
・全ての商標及び登録商標はそれぞれの所有者に帰属します。

・

パーソナルコンピュータを PC と称します。

28

CAN マルチネットワークボード取扱説明書

株式会社

ルネサス エレクトロニクス社 RX231, RL78/F15, RA2L1 搭載
HSB シリーズ応用キット

CAN マルチネットワークボード取扱説明書
応用編
株式会社©2023 北斗電子 Printed in Japan 2023 年 8 月 3 日改訂 REV.1.0.0.0 (230803)