FPGAについて紹介します。FPGAを使った案件が増えてきましたのでご紹介します。(以前の記事)https://ts1781.blog.fc2.com/blog-category-4.htmlFPGAはプログラム可能なデジタル回路です。FPGAはこのFPGAプログラムをLabVIEWで記述できるモジュールです。部門で利用するとメリットがあると感じています。・記述が簡単LabVIEWのブロックダイアグラムで記述できるのでVHDL等と比べれば記述が簡単です。IPもLabVIEWのVIとして提供されているのでIPの利用も簡単です。・シミュレーションが簡単FPGA固有の機能を使っていなければプロジェクト内でPC側にVIをドラッグすることでPC上で動作をある程度確認できます。メリットかもしれません。PCとFPGA間のデータのやり取り(通信)をVHDLで記述しようとするとかなり大変です。FPGAではいろいろな通信の手段が用意されているので簡単にPCとFPGA間の通信を実装することができます。FPGAを利用するにはNI製のハードウェアが必要です。・ロジック回路の知識が必要LabVIEWで簡単に記述できると言ってもロジック回路の知識は必要です。(特に同期回路の知識)LabVIEWのブロックダイアグラムがどのようなロジック回路になるかをある程度想像できないとうまく回路を組めません。:このページのトップへフォースプレートフォースプレート昨年より販売を開始したフォースプレートを紹介します。http://www.tech-s.co.jp/Product/Product1/Unit5.htmlフォースプレートは床反力計とも言います。床に置いてその上にかかる力を測定します。Fitのバランスボードの高機能版と考えていただくとわかり易いです。バランスボードは重心と体重(鉛直荷重)を測定できます。フォースプレートは水平2軸(X軸,Y軸)と鉛直軸(Z軸)にかかる力とそれぞれの軸の周りのモーメントの計6軸を測定できます。重心は水平軸のモーメントと鉛直荷重から計算できます。元々は大阪大学の中田研先生のグループで研究している「動的バランス評価」の研究用ソフトウェア開発のお手伝いをさせていただいたのが始まりでした。このソフトウェアではフォースプレートを使って重心等を測定するのですが、「市販のフォースプレートは非常に高価なため安価に作れないか?」という要望があり開発しました。動的バランス評価の研究内容は下記リンクの下のほうにあります。http://www.comit.med.osaka-u.ac.jp/jp/research/unit4.htmlフォースプレートの最初のユーザーであり開発時に助言を頂いた大阪大学の小笠原先生はフォースプレートをいろいろな計測に活用しています。下記ページを参照下さい。https://www.facebook.com/ogasawara.lab/3つ並べたり、陸上トラックに持ち込んだり、私としては想定外の使い方ですが大活躍ですね。0このページのトップへ関節力学試験ロボット関節力学試験ロボットについて紹介します。このロボットは首都大学東京の藤江研究室と共同開発した製品です。http://www.tech-s.co.jp/Product/Product1/Unit4.htmlロボットに膝関節,肩関節,脊髄などを取り付けて試験を行います。取り付けた関節に任意の力と変位を与えることが出来ます。靭帯の張力解析や靭帯再建手術の評価に使用されています。国内,海外の研究機関や医療機関で使用されており、特に膝靭帯の再建手術の評価では多くの実績を出しています。機構的な特徴として、直動3軸と回転3軸が分かれていることがあります。回転の根元1軸にガイドが付いている事もあり剛性を高くできています。この機構は特許となっています。制御部にはナショナルインスツルメンツ製(以下NI)のリアルタイムコントローラとパソコンを使用しています。開発ソフトウェアにはNIのLabVIEWを用いています。LabVIEWを用いることで、ユーザ側でも比較的簡単にソフトウェアを変更することができます。藤江研究室のホームページでは旧型ロボットでの試験の様子を見ることができます。:このページのトップへミニコントローラRX62T柴田がミニコントローラRX62Tについて紹介します。この基板は、あるアナログ制御を依頼された時に開発した製品です。市販されている一般的なCPU基板にはプラスマイナス10Vのアナログ入出力が実装されていません。プラスマイナス10Vを使用する制御ユニットを市販のCPU基板を使って構成する場合には、CPU基板+アナログ出力基板+アナログ入力基板が必要になります。エンコーダ入力等の差動信号を入力させるためには別途基板が必要です。ミニコントローラRX62Tにはこれらの入出力がすべて実装されています。USBでFIFOデータ送信ができるので、上位ホストへアナログデータを高速で送ることも可能です。(使用例)・サーボモータ/パウダーブレーキのトルク制御トルクメータの値をフィードバックし任意のトルクを出力するようにサーボモータやパウダーブレーキをコントロールします。トルク制御型のサーボドライバの上位コントローラとして構成します。サーボドライバからの位置パルスをフィードバックして位置決めや速度制御を行います。独自の制御ループを組み込むことができます。・アナログ/パルス計測アナログ信号とパルス入力を同じタイミングで測定します。詳細仕様は下記ホームページをご覧ください。:このページのトップへ大型自動ライン装置制御ソフトウェア柴田が大型自動ライン装置制御ソフトウェアを紹介します。■どんなテーマ?以前、望月が同じ名称で紹介しています。望月のソフトウェアは機械体の制御を受け持っています。私のソフトウェアはユーザーインターフェースを主に担当しています。両方のソフトウェアが協調して一つの装置を制御します。ソースファイルが数百もある大規模なソフトウェアですので、トップダウンでしっかり設計していないとおかしなソフトウェアが出来上がります。その当時流行っていたUMLをつかってトップダウンで設計しています。UMLは制御対象の使い方やソフトウェア構造を検討するのに有用です。現在もよく使用しています。UMLで設計したものをC++のコード(ソースファイル)として出力できるツールがあります。このソフトウェアもこのツールを使ってソフトウェアの骨組みを出力しています。C++などのオブジェクト指向言語は大規模ソフトウェアの構築に適しています。それぞれのオブジェクト間(ソースファイル間)のつながりがしっかりと定義されています。データとロジック部もきちんと定義されています。そのため、不具合原因の特定が容易です。■どんな所が難しい?人を相手にするユーザーインターフェースは特有の難しさがあります。機械の制御はある程度動きが特定されますが、人は思ってもいない操作をすることがあります。人によって「使いやすい」「使いにくい」と感じる点が違うのでそのあたりを想像しながら作りこむ点が難しいです。■どんなスキルが必要?C++のプログラミングはもちろんですが、見やすく,使いやすくデザインするセンスも必要ですね。