Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2...

38
1 © 2015 The MathWorks, Inc. 開発プロセスにおける制御試験入門 MathWorks Japan アプリケーションエンジニアリング部 制御 岩井 理樹

Transcript of Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2...

Page 1: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

1© 2015 The MathWorks, Inc.

開発プロセスにおける制御試験入門

MathWorks Japan

アプリケーションエンジニアリング部 制御

岩井 理樹

Page 2: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

2

本講演の対象者&メッセージング

対象者(下記の初心者の方々が主に対象となります)

あまりSimulink®に馴染みのない方

Simulinkで廉価版ハードウェア実装をされていない方

MATLAB®/Simulink®で設計したアルゴリズムの動作検証を実機で確認されたい方

メッセージング

高度な予備知識、高価な道具類などは不要

マイコン実装開発環境構築のハードルは低い

⇒ 例:電子回路の基礎知識、廉価版ハードウェア(ArduinoTM, Raspberry PiTM... etc)の利用、

そして幾つかのパーツの組合せによって様々な動作を即座に実現!

ハードウェア実装に向けた専用のプログラミング(C/C++, Python... etc)は不要

MATLAB/Simulinkで、モデリング・制御系設計~制御器実装のワークフローが実現可能

Page 3: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

3

プラントモデル:制御対象の静/動特性を表現

コントローラモデル:制御装置・制御ソフトを表現

MATLAB/Simulink による制御開発の概要構想・設計・試作・検証などの開発プロセスをモデル&シミュレーションに基づき実施する設計・開発手法

シミュレーションによる解析・検証プラント解析

コントローラ設計

制御系検証

モデルからの自動コード生成 リアルタイムシミュレーション用コード生成

量産用組込みコード生成C/C++HDL

実機/シミュレータを用いたテスト・検証 リアルタイムシミュレーション

モデル生成コード検証

モデリングプラントモデル

コントローラモデル

Page 4: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

4

ユーザー事例(モデルベースデザイン):JPL Tests, Tunes, and Implements Onboard Descent Systems for Spirit and Opportunity Mars Rovers

ChallengeDesign an entry, descent, and landing (EDL) system for a Mars rover

SolutionUse MATLAB and Simulink for numerous phases of the mission,

including navigation, data analysis, and EDL hardware and software

design

Results Onboard descent systems tested under authentic atmospheric

conditions

Viable Mars landing sites easily identified

Spacecraft landing flawlessly executed

Using MATLAB, engineers tested,

tuned, and implemented the onboard

descent systems that told the rover

which rocket systems to fire and

when. The landing of the rover

happened precisely as the EDL team

had predicted. Link to article

Artist's rendition of Mars rover. Graphics

courtesy of NASA/JPL/Cornell.

火星探査車(マーズ・ローバー)

Page 5: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

5

ChallengeMeasure the effect of vision on natural gait selection

SolutionUse MATLAB and Simulink to develop a PID controller that

regulates treadmill speed based on the subject's position on

the treadmill

Results Fixes to experimental setup rapidly implemented

Dynamics of processes affecting gait quantified, improving

validity of test results

Understanding of human gait increased, enabling more

effective rehabilitation therapies

“Instead of waiting weeks for another

company to implement fixes, we could

implement them ourselves—often in a

single day—because we had built the

controller in Simulink ... the ability to test

the setup, rapidly make minor adjustments

to the controller, and then retest was

invaluable.” Shawn O’Connor

Simon Fraser University

Link to article

Experimental setup showing treadmill

and projection screen.

ユーザー事例(PC環境型低コストハードウェア):Using MATLAB, Virtual Reality, and a Treadmill to Investigate How Humans Use Visual Input to Control Their Gait

歩行シミュレータ装置

Page 6: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

6

アルゴリズム

設計

制御

モデル

実装 コード検証

HILS

実機検証

検証

MILS(シミュレーション解析・検証)

RCP(プロトタイプコントローラによる

制御ロジック実機試験)

(リアルタイムシミュレータによる

量産コードテスト)

制御モデル単体検証

設計

制御開発基盤:

MATLAB/Simulinkプラントモデリング

モデルベース検証

制御モデルからの自動コード生成

実行時エラーの検証

モデルベース適合

様々な仮想環境による検証

本講演の対象領域ラピッドプロトタイピング=プロトタイプコントローラによる制御ロジック実機試験

MILS:Model In the Loop SimulationRCP:Rapid Control PrototypingHILS:Hardware In the Loop Simulation

Page 7: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

7

スマートフォンとの融合型プラットフォーム

Raspberry Pi とArduino による

融合型プラットフォーム

BeagleBone Blackによる

低コストプラットフォーム

メリット: ROS内蔵 スマートフォンの即利用課題点: カスタムアプリの開発

メリット: ROS内蔵 安価課題点: 多数センサの制限

メリット: ROS内蔵 多数センサへの堅牢性課題点: 処理能力の制限

簡易マーズローバー装置 Digilent®プラットフォーム

Arduino側の役割• センサ入力• モータ制御

Raspberry Pi側の役割• カメラ• ROSノード間通信• RSTへのWi-Fi接続

BeagleBone Black側の役割• モータ• 高性能赤外線センサ• ホイールエンコーダ• ROSノード間通信• RSTへのWi-Fi接続

Arduino/RoboMe側の役割• モータ

スマートフォン側の役割• カメラ• 慣性計測ユニット• ROSノード間通信• RSTへのWi-Fi接続

QuickBot

DFRobotShop Rover V2

WowWee® RoboMeTM

廉価版ハードウェア連携による種々のプラットフォーム

Linux搭載のシングルプロセッサ 安価 組立てが容易

ROS:Robot Operating SystemRST:Robotics System Toolbox™

Page 8: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

8

アジェンダ

廉価版ハードウェア概要

実装開発環境例:ビジュアルサーボシステム例

まとめ

本講演のゴール

MATLAB/Simulinkの一貫したツールチェーンと廉価版ハードウェアを用いることで、安価で手軽な開発環境が構築可能であることをデモを通じてご理解いただきます

Page 9: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

9

ブロック線図 環境

マルチドメイン システムのモデリング、シミュレーション、解析

正確な設計、実装、テスト:制御システム信号処理システム通信システムその他の動的システム

モデルベースデザイン のプラットフォーム

※BeagleBone Blackの場合、Embedded Coder®が別途必要です

Simulink動的システムや組込みシステムのモデリング、シミュレーション、そして、実装 を行うための優れた環境

Page 10: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

10

R2012b R2013a R2013b R2014a R2015a

BeagleBoard

/PandaBoard

LEGO MINDSTORMS

NXT

Arduino Nano, Uno, Mega 2560Raspberry Pi

KINECT for

Windows

Digilent Analog

Discovery

iPhone, iPad,

Android

各種センサ情報

Samsung GALAXY

Android

LEGO

MINDSTORMS EV3

RTL-SDR

Radiohttp://www.mathworks.co.jp/hardware-

support/home.html?s_tid=hp_mi_hwsupport_0913

iOS

Devices

Simulink は様々なハードウェアをサポート①

Page 11: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

11

Simulink は様々なハードウェアをサポート②

Page 12: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

12

Simulink ハードウェア連携機能

Simulink単体でモデル組込み実装を実現

LEGO MINDSTORMS

EV3

Cコード生成

コンパイル/実装

モデル

Arduino Raspberry Pi

Page 13: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

13

擬似リアルタイムシミュレーションにおける実行モードの違い

エクスターナルモード※ ハードウェアに展開USBシリアルEthernetWi-FiBluetoothetc

による通信

Simulinkと強調動作 擬似リアルタイムテスト中での

• 信号測定• パラメータ設定

が可能(デバッグ用) ハードウェア単独で動作

擬似リアルタイム実行用プログラムのハードウェア実装

※Arduinoの場合、Arduino MEGA, Arduino DUE がエクスターナルモードをサポートしています

Page 14: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

14

>>supportPackageInstaller

オプション1

オプション2

ハードウェアサポートパッケージの入手方法①インターネット経由により容易に入手可能(無償)

(コマンド)

上記何れかの方法でハードウェア関連ライブラリが容易に入手可能

Page 15: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

15

MathWorksアカウントによるログイン

アカウントの新規作成も可能

ハードウェアサポートパッケージの入手方法②インターネット経由により容易に入手可能(無償)

Page 16: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

16

該当するサードパーティハードウェアを選択してインストール

ハードウェアサポートパッケージの入手方法③インターネット経由により容易に入手可能(無償)

Page 17: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

17

Arduino I/O

Due

Leonardo

Mega

ADK

Micro

Mini

Nano

Pro

Pro Mini

Fio

Sparkfun

Mega

2560

Uno

Arduino & Raspberry Pi のサポート①Simulink専用ライブラリとしてサポート

>>arduinolib

>>raspberrypilib

Page 18: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

18

Arduino & Raspberry Pi のサポート②Simulink専用ライブラリとしてサポート

Arduino の特徴• シリアル通信• Wi-Fi・ Ethernet通信• A/D変換• PWM出力(アナログ出力)• 制御系リアルタイム性の確保• 組込み・ハードウェア制御主体

etc

Raspberry Pi の特徴• GPIO端子付PC• Linux OS 搭載• マルチタスク• ネットワーク接続• 画像・音声処理• ソフトウェア主体

etc

組込み・制御

ヘッドホン GPIO

カメラボード

Page 19: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

19

廉価版ハードウェアクイックデモ:Arduino によるLED点灯

Page 20: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

20

ポテンショメータ

Arduino Mega

2560

A1

A0

D3

PWM(正/反転)速度指令

速度情報

TA7291P(モータドライバ)

LPフィルタ

Motor

Tacho-meter

制御対象

USBケーブル(PCへ)

Arduino用AC/DCアダプタ(9V 1.3A)

モータ駆動回路用AC/DCアダプタ(5V 2A)

駆動用DCモータ

タコ・ジェネレータ用DCモータ

D5

廉価版ハードウェアクイックデモ:Arduino によるDCモータの速度制御①

R

C

高範囲な速度制御にはクローズド・ループ制御が有効 安価な速度センサとしてタコ・ジェネレータを模擬 速度センサを負荷に取り付けたフィードバック制御を模擬

Page 21: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

21

廉価版ハードウェアクイックデモ:Arduino によるDCモータの速度制御②

Page 22: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

22

廉価版ハードウェアクイックデモ:Raspberry Pi による画像の反転①ウェブカメラ動作確認

Page 23: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

23

廉価版ハードウェアクイックデモ:Raspberry Pi による画像の反転②ウェブカメラ動作確認

Page 24: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

24

アジェンダ

廉価版ハードウェア概要

実装開発環境例:ビジュアルサーボシステム例

まとめ

本講演のゴール

MATLAB/Simulinkの一貫したツールチェーンと廉価版ハードウェアを用いることで、安価で手軽な開発環境が構築可能であることをデモを通じてご理解いただきます

Page 25: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

25

実装開発環境例:ビジュアルサーボシステムによるデモ全ワークフロー

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflow®ロジックエクスターナルモード

Page 26: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

26

Arduino Uno

Raspberry Pi

サーボモータ

ウェブカメラ追跡用ボール

実装開発環境例:ビジュアルサーボシステムによるデモシステム構成品

Arduino Ethernet Shield※

※現状(R2015b)では、WIZnet社製W5500がサポートされておりません※WIZnet社製W5500内蔵の Arduino Ethernet Shield 2, Arduino Leonardo Ethernet などは使用できません

Page 27: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

27

実装開発環境例:ビジュアルサーボシステムによるデモシステム構成

USB接続(Arduino - Host PC 間)

Arduino用AC/DCアダプタ(9V 1.3A)

Raspberry Pi 用AC/DCアダプタ(5V 2A)

Host PC(開発用PC)

Arduino UnoArduino Ethernet Shield

Raspberry Pi 2 Model B

Ethernet接続(Arduino - Raspberry Pi 間)

Ethernet接続(Raspberry Pi - Host PC 間)

ウェブカメラ(Raspberry Pi に接続)

Page 28: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

28

実装開発環境例:ビジュアルサーボシステムによるデモ

Page 29: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

29

実装開発環境例:ビジュアルサーボシステムによるデモ画像取得・処理プロセス:Raspberry Pi

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Page 30: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

30

実装開発環境例:ビジュアルサーボシステムによるデモ画像取得・処理プロセス:Raspberry Pi

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Page 31: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

31

実装開発環境例:ビジュアルサーボシステムによるデモ監視制御・通信プロセス:シリアルポートおよびUDP-Ethernet

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Stateflowフローチャート・状態遷移図設計

Page 32: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

32

実装開発環境例:ビジュアルサーボシステムによるデモモータ制御アルゴリズム試験:Arduino

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Simulink Control Design™線形・周波数応答解析、PID自動調節

Simulink Design Optimization™最適化によるパラメータ調整

Simscape™物理プラントモデリング

Page 33: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

33

実装開発環境例:ビジュアルサーボシステムによるデモハードウェア実装&制御試験:Arduino+Raspberry Pi

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Page 34: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

34

実装開発環境例:ビジュアルサーボシステムによるデモ全システムのスタンドアロン実行

動画取得モデル作成

物体検出用アルゴリズム

システム同定PID自動調整

デバッグエクスターナルモード

開発用PCとの切断スタンドアロン実行

画像取得 画像処理組込み

コントローラ制御試験

ハードウェア実装

監視制御

Stateflowロジックエクスターナルモード

Page 35: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

35

アジェンダ

廉価版ハードウェア概要

実装開発環境例:ビジュアルサーボシステム例

まとめ

本講演のゴール

MATLAB/Simulinkの一貫したツールチェーンと廉価版ハードウェアを用いることで、安価で手軽な開発環境が構築可能であることをデモを通じてご理解いただきます

Page 36: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

36

まとめMATLAB/Simulink と廉価版ハードウェア連携で制御試験・試作の加速化

高度な予備知識、高価なツールなどは不要

マイコン実装開発環境構築のハードルは低い(回路の基礎知識+廉価版HW+パーツ... etc)

ハードウェア実装に向けた専用のプログラミング(C/C++, Python... etc)は不要

MATLAB/Simulinkで、モデリング・制御系設計~制御器実装のワークフローが実現可能

本講演内容が皆様のご業務や社内教育などにお役立ていただければ幸いです

Page 37: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

37

Exercise demo -

Simulink / Stateflow は習って慣れれば、直ぐにマスター可能です

(MathWorks トレーニング - 2分間CM)

• 毎月開催!「Simulink 基礎」

• 2ヶ月に1回開催!「Stateflow 基礎」

• 具体的な例題からモデルを作る方法が

学べます

受講者が解けるようになる演習の一例

Page 38: Multi-konzeptionelle Verwendung von Low-Cost Hardware in der … · 2 本講演の対象者&メッセージング 対象者(下記の初心者の方々が主に対象となります)

38

© 2015 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The

MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks.

Other product or brand names may be trademarks or registered trademarks of their

respective holders.

Accelerating the pace of engineering and science

ご清聴ありがとうございました