サイト内検索

いざ、モーターアプリケーションの制御を開発するとなるとマイコンで開発しようと考えるエンジニアは多いのではないでしょうか?

しかし、マイコンで設計した場合、下記のような課題に直面します。

  • 長期的に製品供給するアプリケーションなのにマイコンが生産中止
  • モーターを複数制御したいがマイコンの PWM などペリフェラルが足りない
  • モーター制御と通信処理を同時に動作したらパフォーマンスが足りなかった


など実際に開発の現場ではよく話を聞きます。

しかし、FPGA を採用することでこれらの問題を解決することが可能です。
FPGA を採用するメリット、デメリットも含めて解説します。

FPGA でモーター制御をおこなう3つの理由

[理由1] 処理速度がマイコンと比較して圧倒的に速い

一般的なマイコンは性能があがったとはいえ、μsec での処理速度です。
FPGA ではローエンド向け FPGA でも nsec での処理が可能であり処理速度はマイコンと比較して圧倒的です。

FPGA はハードウェアで処理するため、モータ制御で必要な PWM などの処理が得意です。

マイコンのソフトウェアでの処理速度と比較すると数倍〜100倍以上の差がでるからです。

[理由2] 複数のモーターを同時に処理できる

産業機器、FA ロボットなど、1つのアプリケーションで10個、20個のモーターを制御しなければならい状況はどんどん増えています。

これらの処理を1個のマイコンで処理することはできるのでしょうか?10個のモーターを同時に制御するなど不可能です。

そもそも、制御に必要な PWM が数十個搭載したマイコンは存在しません。
しかし、FPGA であれば数十個の PWM を搭載することは容易にできます。また、FPGA 内部に CPU を搭載することもできるため、1個の FPGA で数十個のモーターを制御することも可能です。

[理由3] 長期供給が可能

産業機器向けアプリケーションを供給しているメーカーの最大の悩みは生産中止です。

マイコンが生産中止になった場合、ほとんどの場合において、御社の製品の製造中止を意味します。

よほど、しっかりとした後継マイコンを供給してもらえない限り継続しての生産はできないでしょう。

Altera® は ほとんどの FPGA を長期供給しています。製造開始から20年以上たっても市場に供給し続けている製品もあります。もし、万が一 FPGA が生産中止になったとしても、後継の FPGA に設計ソースを移植することが簡単にできます。
つまり、後継の FPGA で同じ機能が継続して利用できます。

そうはいっても、1個のモーター制御で十分という場合はマイコンで事足りますし FPGA を利用することのデメリットもあります。

FPGA を使うデメリットもあります

[デメリット1] 動作には複数電源が必要

一般的な FPGA ではコア電源と I/0 電源が分かれています。

例えば FPGA はコア電源が 1.2V に加えて、インターフェース毎に I/O 電源が必要です。
メモリーや差動信号、LVCMOS などインターフェース毎に複数の電源が必要になります。
FPGA の電源周辺がマイコンと比較して設計が面倒というデメリットがあります。
しかし、Altera® の最新デバイス MAX® 10 シリーズは 3.3V 単一で動作する FPGA も販売されており、デメリットも解消されつつあります。

[デメリット2] コンフィグレーション ROM が必要

一般的な FPGA は SRAM ベースで設計されているため、電源を落とすと、FPGA 内部の回路データは消えてしまいます。そのため、FPGA を立ち上げるたびに外部の ROM からコンフィグレーションが必要です。

このことが FPGA が2チップ構成が必要になり、外部 ROM がコストアップの原因にもなっています。

しかし、Altera® の最新デバイス MAX® 10 シリーズは FPGA 内部に Flash メモリーを搭載しておりワンチップでの FPGA 動作を実現しています。このデメリットは解消されています。

[デメリット3] マイコンと比較して単価が高い

ひと昔前の FPGA は1個あたり、数千円〜数万円というのが相場でした。そのため、マイコンと比較すると数倍の値段がするということもよくありました。

しかし、現在はプロセスの微細化が進み、低価格帯の FPGA も普及がすすんでいます。購入数量にもよりますが、モータ制御に使える FPGA が数ドルで買えるような状況になってきています。

以上のようにマイコンと比較して FPGA でモータ制御を実現するにはデメリットもあるものの、最新の Altera® FPGA ではそのデメリットも解消されています。

複数のモーターを制御が必要な高付加価値のアプリケーションの開発には FPGA を採用するケースが増えています。

とはいえ、モータ制御を FPGA で ゼロから作って評価するのはかなり大変です

これはマイコンにも言えることですが、何も状態からモータ制御の回路を FPGA でいきなり開発するのはかなり大変です。

マイコンであれば、ペリフェラルに合わせてソフトを開発することもできますが、FPGA の場合はそのペリフェラルから開発するようなものです。

ですから、開発キットやリファレンスデザインなどを使って FPGA を開発するのがもっともベストな方法です。

すぐに使えるサーボモーター開発キット「DE10 Lite」と「Servo Motor Kit」

「Servo Motor Kit」は Terasic 社製の FPGA 開発キットです。Altera® FPGA の最新デバイス MAX® 10 が搭載された「DE10 Lite」とつなぎ合わせることですぐにサーボモーター制御の評価ができます。

「Servo Motor Kit」には最大24個のサーボモーターを接続して同時に制御することができます。

また、サーボモーター制御に必要なリファレエレンスデザインも付属しているため動作確認後、このリファレンスデザインを元にすぐに開発がおこなえます。

開発キットには回路図面、部品リストも付属しているのでこの図面とリストを参考に基板設計も容易におこなうことができます。

開発ツールは無償で使えます

この開発キット「DE10 Lite」には搭載されている、FPGA は Altera® の無償開発ソフト「Quartus Prime ライト・エディション」で開発がおこなえます。

また、デバッグやプログラムの書き込みは開発キットに専用回路が実装されているため、PC と開発キットを付属の USB ケーブルでつなぐだけで開発がおこなえます。

アプリケーション例

  • FAロボット
  • 工作機器
  • アクチュエーター
Article header de10 lite servo motor kit 02  1
アプリケーション例

開発キット「DE10 Lite」「Servo Motor Kit」の詳細

FPGA 開発キット「DE10 Lite」

メーカー名 terasic
型  名 P0466 / DE10 Lite
搭載 FPGA
  • MAX® 10 10M50DAF484C7G Device
  • Integrated dual ADCs, each ADC supports 1 dedicated analog input and 8 dual function pins
  • 50K programmable logic elements
  • 1,638 Kbit M9K Memory
  • 144 18 × 18 Multiplier
  • 4 PLLs
Memory Device 64MB SDRAM, x16 bits data bus
Expansion Connectors
  • One 2x20 GPIO Connector (voltage levels: 3.3V)
  • Arduino Uno R3 Connector, including six ADC channels
Display 4-bit Resistor VGA
Switches/Buttons/
LEDs/7-Segment Display
  • 10 LEDs
  • 10 Slide Switches
  • 2 Push Buttons
  • Six 7-Segments Display
付属品一覧
  • DE10 Lite Bord × 1
  • USB cable

Article header de10 lite servo motor kit 01 2  1
FPGA 開発キット「DE10 Lite」

ドーターカード「Servo Motor Kit」

メーカー名 terasic
型  名 P0288 / Servo Motor Kit
機能詳細
  • Input 6.2~12V DC for driving motors
  • Provide 5V DC power output for host board
  • 2X20 3.3V GPIO Interface
  • Drive 24 servo motors at most
  • Fuse protection for each servo driving port
  • Build-In Altera CPLD and Power Monitor Chip
  • Battery voltage monitor
  • Total current monitor
  • Auto shutdown when battery is low or total current is too high
  • Source code is available for users to modify according to their application
付属サーボモータ
  • Rotation Angle : 0~120
  • Weight : 55g
  • Dimension : 40.7×19.7×42.9mm
  • Stall torque : 9.4kg/cm (4.8v); 11kg/cm (6.0v)
  • Operating speed : 0.19sec/60degree (4.8v); 0.15sec/60degree (6.0v)
  • Operating voltage : 4.8~ 6.6v
  • Gear Type : Metal gear
付属品一覧
  • Servo Motor Card x1
  • MG996R Servo Motor x1
  • 40-pin 2x20 GPIO Cable x1
  • System CD Download Guide

Article header de10 lite servo motor kit 01 1  1
ドーターカード「Servo Motor Kit」

    

商品の購入はこちら

DE10-Lite Board
Servo Motor Kit

メーカーサイト/その他関連リンク

DE10-Lite Board の詳細
Servo Motor Kit の詳細
MAX 10 FPGA の詳細