Vivado & Vitis でC言語高位合成 Hello World チュートリアル

皆様こんにちは。18のhiraです。ソナー作ったら面白そうとか言っている人ですが、そんなソナーに必要なのは「正確な時刻で処理をする」ことです。ただ、一般のCPUで普通のプログラムを動かすと、時間指定したつもりでも処理に数msのズレが生じてしまうこともあります。正確に数百kHzでサンプリングするようなソナーには不向きです。

それを解決する(と勝手に思っている)のがFPGAです。FPGAは中の回路の配線を、使用者が好き勝手につなぎ直すようなことができる特殊なデバイスです。回路を最適化することで使用者が指定した通りに動作でき、さらに大規模並列回路にすることもできます。大量・高速のデータ処理を必要とするAI学習やデータセンターにも採用されています。
しかしそれにはHDLという、レジスタ叩きやビット操作を書き連ねる、長ったらしいプログラムで書かねばならないことが大きな壁でした。

今回使用するFPGAボード「Arty Z7」

そこでFPGAをもっと活かすため、C言語プログラムをHDLに変換して開発を加速させる「高位合成」という技術が近年注目されています。今回はそんなC言語プログラムの高位合成を「Vivado」、「Vitis」という専用ツールを使って初歩の初歩を体験していきます。

“Vivado & Vitis でC言語高位合成 Hello World チュートリアル” の続きを読む

フェイズドアレイソナーを作りたい

 

こんにちは.18のhiraです.

僕は水中ロボットを製作するアクア研で活動しています.そんな水中探査では観測により地形図の作製をすること(マッピング)が目標だったりするのですが,水中では電波が急速に減衰するためレーザー測量を使うことはできません.そのため超音波ソナーを使います.しかしこの音波というものは指向性に乏しく,あらゆる方向の反射波が重なってしまいます.そこで,今回はその反射波を数理的に解析し高度なマッピングを行うソナーの信号処理について書いていきます.

天下(海中?)のJAMSTECのが測海して作製した海底地図.こんなマップを作ってみたい

“フェイズドアレイソナーを作りたい” の続きを読む

水中ロボコン参加報告

こんにちは.18のhiraです.

今回は先日12/5,6の土日に海洋開発研究機構(しんかい6500使っている研究機関!)にて行われた「水中ロボットコンベンション in JAMSTEC 2020 ~海と日本プロジェクト~」についての報告です.

水中ロボコンは文字通り水中で潜水艇ロボットを走らせ,沈められたブイにタッチしたり,写真をとったりします.最近では自律ロボットAUVも盛んです.

そんな水中ロボコンですが,例年は8月末に開催されるのですが,今年はコロナの影響で12月初めの開催となりました.ロボット技術研究会アクア研からは17が製作した「Iwatobi」と18,19,20が製作した「イカヒコーキ」の2機が出場しました. “水中ロボコン参加報告” の続きを読む

画像処理&機械学習で水の世界を鮮やかに!~Sea-thru法~

皆様こんにちは.18のhiraと申します.普段は水中ロボットを作るアクア研で活動し,情報通信系の平均点を底から支えています(引きずり下ろしているともいう).

さて,海で泳いだことがある人も多いかと思いますが,水の中はどうも見えにくいですよね.特に「青緑がかっていて暗い」と感じるのではないでしょうか.そして肉眼だけでなく,カメラで撮った写真も同様に色味の無く暗い写真になってしまいます.

この画像の様に水中においては,それも遠ければ遠いほど急速に青緑がかり暗く写ってしまいます.せっかく極彩色で美しいサンゴ礁を撮っても,見直したくなる画像とはならないでしょう.

せっかくダイビングをしたというのに真っ暗な写真ばっかりでは面白くありません.理系が恥も外聞も耐え忍びキラキラした海に繰り出すというのなら,桃色のサンゴ,真っ黄色の魚,紫の貝殻などなど,ただ海を楽しみに来た至極真っ当な方々の目では見ることのできない総天然色の「本物の色」を見てみたいですよね?

“画像処理&機械学習で水の世界を鮮やかに!~Sea-thru法~” の続きを読む