サイト内検索

昨今の高度な電子制御システムの普及に伴い、産業機器やロボット開発などの分野において、機能安全の重要性はますます高まっています。 設計から開発、評価に至るまで、安全規格への確実な対応は、開発者にとって大きな課題となっています。 こうした背景のもと、機能安全を考慮したシステム設計をいかに効率良く進めるかが求められています。

 

本記事では、マクニカ製半導体ひずみセンサーSTREAL を用いたトルクセンサー開発事例を通じて、Renesas製マイコンRX65(RX651系) で機能安全プラットフォームソフトウェア(PL-SW)を活用した際のコンフィグ例について解説します。機能安全対応ソフトウェアを効率的に設計したい開発・設計者の方に最適な内容です。

 

※トルクセンサー:機械や装置の回転軸に加わる回転力(トルク)を検出し、その値を電気信号に変換するセンサー

Renesas機能安全プラットフォームソフトウェア(PL-SW)とは?

PL‑SW とは、マイコンを用いた2重化構成の機能安全システム開発を容易にする、機能安全プラットフォームソフトウェアです。

主に以下の機能が備わっています。

 1. 自己診断・相互監視などによるマイコン診断
 2. スケジューラーによるユーザーソフトウェアの実行制御
 3. ソフトウェア間の影響分離パーテショニング

1PL-SWによる2重化構成の自己/相互診断機能の概要(出典:ルネサス エレクトロニクス株式会社「RX Functional Safety ソリューション紹介.PDF)

App1:異常監視、App2:トルクセンサー管理部、App3:トルクデータ処理部は機能安全対象のユーザーアプリケーションです。

2:トルクセンサー開発におけるソフトウェアブロック図

自己診断、相互診断のコンフィグ

トルクセンサーの開発では、ファームウェア(FW)アップデート機能を実装するためにダブルBANK構成としています。

また、相互監視にはSCI12を使用しています。

 

※本記事中のコンフィグ定義名は、実際のPL-SWから変更しています。

ROM診断開始アドレス

ダブルBANK構成のため、診断サイズをRX651の最大リソース(2MB)の半分に設定します。

コンフィグ定義名

設定値

診断サイズ

USER_SETTING_ROM_DIAG_STADDR

0xFFFE 3000

1MB

内蔵RAM診断サイズ

ダブルBANK構成のため、診断サイズをRX651の最大リソース(256KB)の半分に設定します。

コンフィグ定義名

設定値

診断サイズ

USER_SETTING_INT_RAM_SIZE

0x0000 2200

128KB

 

相互監視用SCIチャネル

相互監視で使用するSCIのペリフェラル名を設定します。

 

コンフィグ定義名

設定値

説明

USER_SETTING_SCI_CHANNEL

SCI_CH12

SCI12を使用

 

相互監視用SCI通信ボーレート

RX651で選択可能な最大値(7.5Mbps)を設定します。

 

コンフィグ定義名

設定値

説明

USER_SETTING_SCI_BAUDRATE

BAUDRATE_7500000

7.5Mbps

スケジューラーのコンフィグ

以下のようにアプリケーションを起動させたい場合

3:トルクセンサー開発におけるソフトウェアの実行順序

ユーザーアプリケーション順序

起動させたい順番にユーザーアプリケーションを設定します。

 

コンフィグ定義名

設定値

USER_SETTING_USER_APP_SEQUENCE

APP2, APP2, APP1, APP2, APP2, APP2,APP3, APP2, APP2, APP2, APP3, PLSW

ユーザーアプリケーションウィンドウタイム

各ユーザーアプリケーションの実行時間を設定します。

 

コンフィグ定義名

設定値

説明

USER_SETTING_APP1_WINDOW_TIME

XXX

単位:us

USER_SETTING_APP2_WINDOW_TIME

YYY

単位:us

USER_SETTING_APP3_WINDOW_TIME

ZZZ

単位:us

USER_SETTING_APP4_WINDOW_TIME

0

単位:us

パーテショニングのコンフィグ

App2:トルクセンサー管理部の場合

App2はSCI5を用いて外部機器と通信を行う機能を持っています。

そのため、SCI5関連のレジスタにアクセスするため、その許可設定が必要となります。

図 4:トルクセンサー開発における機能安全対象アプリケーション

MPUアクセス許可領域の設定

SCI5関連レジスタのアドレス範囲を設定します。

 

コンフィグ定義名

設定値

説明

USER_SETTING_APP2_AREA6_STADDR

0x0008A0A0ul

SCI5のレジスタエリア

USER_SETTING_APP2_AREA6_ENDDDR

0x0008A0C0ul

USER_SETTING_APP2_AREA6_ACCESS_MODE

RAM_ACCESS

 

もっと詳細を知りたい方へ

本記事の内容をさらに詳細に解説したオンデマンド動画をご用意しています。

ご興味のある方は、是非、以下のバナーをクリックしてお申し込みください!