個人がArduinoやRaspberryPiを利用して実験ベースで手軽に使えるLiDARセンサー「iLidar」

LiDARとは”light detection and ranging(光による検知と測距)”と言ってレーザー距離計の高性能版とでも呼べるもので、今ではロボット掃除機や自動運転自動車、そしてみなさんが使っているiPhoneのFaceIDも同様の技術を使用しています。

このLiDARの発展によって自動車の自動運転が実現したと言っても良いくらいの技術で、センサーとモノとの距離を空間で捉える事ができますので、簡単にかつ瞬間に障害物を見つけたりする事に優れていたり、自動的に障害物を避けて移動すると言った事がこのLiDARセンサー1つでもできてしまうかなり優れたセンサーなのです。

それをUSB(UART)やI₂C、SPIと言ったマイコンでも使われているインタフェース規格で通信が可能なLiDARセンサー「iLidar」を今回はご紹介致します。


“個人がArduinoやRaspberryPiを利用して実験ベースで手軽に使えるLiDARセンサー「iLidar」” の続きを読む

プログラム次第で多彩な光らせ方ができるArduino Nanoで作るナイトライト・キット「RasPiO Night Light」

ナイトライトと言って夜間にトイレに行ったりする時に危なくない様にコンセント等に差し込んで使う小さな”明かり”が昔からあります。
そのナイトライトをキットではありますが、制御基板にArduinoを使う事でプログラムを書き換え可能にし、世界に1つのオリジナルナイトライトを作る事ができるキット「RasPiO Night Light」をご紹介致します。


“プログラム次第で多彩な光らせ方ができるArduino Nanoで作るナイトライト・キット「RasPiO Night Light」” の続きを読む

Arduinoを使い回路設計・作成とプログラミングを行った時のデバッグを非常に楽にしてくれる「DEbug Board」

今はRaspberryPiやArduinoと言った非常に便利なマイコンボードがいくつもありますので、PICの様な生のICを使い回路設計を1から行わなくてもセンサーを使ったりした制御がとても簡単にできる時代になりました。
ですから小学生でもArduinoやRaspberryPiを使い、気温や湿度、土中の水分量を計測するセンサーそしてウォーターポンプなどを繋いで”植物の自動水やり器”なんてものは簡単に部品を繋げるだけで作り上げたりする事ができます。

ただそう言う既製のセンサー類を使わずに自分で回路設計をした場合に、期待した通りの動きをしてくれなかった時が大変です。
ディスプレイの中でキャラクターを動かす様な場合はプログラムに”バグ”と言って不具合がありますので、それはプログラムのデバッキングをすれば良いと言うのは明白なので分かり易いのですが、それが自作回路と組み合わせるとなると、ハードが悪いのか、プログラムが悪いのか、どちらに不具合があるのか両方から攻めていかないとデバッグもスムーズに進みません。

そこで、Arduinoを使って回路設計をした時にそのデバッグを非常にスムーズに楽にしてくれるArduino用デバッグボード「DEbug Board」をご紹介致します。


“Arduinoを使い回路設計・作成とプログラミングを行った時のデバッグを非常に楽にしてくれる「DEbug Board」” の続きを読む

ArduinoやPICにI2Cで接続できる超魅力的なロータリーエンコーダボード「I2C Encoder V2」

今回はArduinoやPICやRaspberryPiでロータリエンコーダを接続する時に、みなさんが一様に困っていた誤カウントを防止する上に、GPIOの節約、そしてプログラムを簡素化できるI2C接続で使えるロータリーエンコーダ・ボード「I2C Encoder V2」をご紹介致します。


“ArduinoやPICにI2Cで接続できる超魅力的なロータリーエンコーダボード「I2C Encoder V2」” の続きを読む

CANインタフェースを搭載する事で相互通信が可能なRaspberryPiHAT + Arduino MKR互換機「NoCAN」

マイコンを使ったハード設計において制御ボード間で通信を行う場合の通信方式として古くからあるのはUARTと言うシリアル通信で、その他にSPIやI2C通信があります。
この中でUARTとSPI通信は1:1の通信な為に設計する際の制約がどうしても生まれます。

例えばUARTですとリアルに1:1での通信ですので複数のセンサーと通信と行う場合はセンサーの数×2本の配線が奪われ、ソフトウェアシリアルに使用できないポートがありますとそれだけ接続できるセンサーやモーター類も少なくなってしまいます。

一方SPIは3本の信号線(SI,SO,SCK)を使い通信を行うのですが一方通行の通信しかできず、1つのSPI信号に複数のスレーブと呼ぶボードをぶら下げる事はできますが、どのボードと通信するのかはマスター側からのもう1本のCS配線を使って制御しなければならずスレーブとなるボードが増えれば増えるほどマスターとなるボードの空きポートは減って行きます。

そしてI2Cは2本の信号線でマスターとなる親機と相互通信でき他、接続するI2C機器にはそれぞれ全く違う重なる事のないアドレスが割り振られていますので、スレーブとなる子機同士の通信もアドレスを使って行う事ができる様になっており、少ない配線で多数の機器と通信できる為に便利なのですが、基板内通信が基本で、遠く離れたボードと通信すると言う用途には残炎ながら向きません。

そこで、離れた場所に設置した機器とも通信できノイズに強いCAN通信をサポートしたArduino MKR互換機「NoCAN」とRaspberryPi用HATをご紹介致します。


“CANインタフェースを搭載する事で相互通信が可能なRaspberryPiHAT + Arduino MKR互換機「NoCAN」” の続きを読む

RaspberryPiが赤ちゃんに見えるAMD Ryzen™組み込み型プロセッサー搭載「UDOO BOLT」

RaspberryPiはGPIOを搭載した小型マイコンで、Linuxが動く上に(IoT向けWindows10も動きますが)直接ボードから各種センサーやサーボ等のハードウェアが制御できる画期的なマイコンボードで、PICやArduinoでメモリーの少なさに苦慮していた開発者達にとっては何でもできる魔法の箱の様な存在でした。

そしてこのRaspberryPiのお陰でIoT機器が急速に発達して言ったと言っても過言ではありません。例えば、画像認識技術による自動追尾機能などはその代表的な例で、カメラで捉えた映像から動く物体を検出してカメラを固定したサーボを動かして動く被写体を追うなんて言う事はArduinoでは処理スピードが遅すぎてまず考えられませんし、自立制御できるロボットやセグウェイと同じ原理で動作するホバーボード(2輪の自動でバランスを取って走行する乗り物)等も同様の事が言えます。

ただRspberryPiが進化して年々高速化しているとは言っても、グラフィック機能が弱い為にX-Windowsを起動させるとその動きは”もっさり”としていますし、IoT用のWindows10も決して動きが速いとは言えません。

ですが今回紹介するAMD Ryzen™組み込み型プロセッサー V1000搭載の「UDOO BOLT」は普通のパソコン用マザーボードにArduinoを組み込んだ様なボードで、マイクラで影Modを入れてもサクサクと動く最強とも言うべきボードです。


“RaspberryPiが赤ちゃんに見えるAMD Ryzen™組み込み型プロセッサー搭載「UDOO BOLT」” の続きを読む

動体検知機能搭載でArduinoオンボードなWiFiにも対応したCCDカメラモジュール「Llivera」

自動で動くロボットを作ろうとした時に周囲の状況を知る為のセンサーが必要なのは当然ですが、昔であれば赤外線センサーや超音波センサーを使って周囲にある障害物を検出するのが主流でしたが、今ではCCDも小型化し処理ボードも小さくなっていますから小型のロボットにも搭載する事が難しくなくなって来ており、複数の赤外線センサーや超音波センサーからのデータを処理するよりもCCDから画像を得た方が遙かに簡単に精密に周囲に何があるのかを高速に検出処理する事ができます。
ですが新しいデバイスに挑戦すると言うのはそれを使える状態に持って行くまでに大変な時間と労力を要するのですが、このCCDカメラモジュール「Llivera」はOpenCVに対応し、Arduinoライブラリを用意する事でRaspberyPiやArduinoでも簡単に利用する事ができる様に設計してあります。


“動体検知機能搭載でArduinoオンボードなWiFiにも対応したCCDカメラモジュール「Llivera」” の続きを読む

初心者が陥りがちなデバッグループに救いの手を差し伸べてくれるATMega328P使用Arduino互換機「Maker UNO」

もうあと2年もすると学校にプログラミング授業が必須科目として導入される事になっており、今では先を見越してプラグラミング教室に通わせる親、そして子どもさんが増えて来ており、とあるアンケートによると子どもに習わせたい習い事の第1位が今では”プログラミング”となっています。

そんなプログラミングで一番困るのがデバッグ作業で、言うなれば日本語を英語に訳した時に、その文章が合っているのかどうか?を添削して直すと言う様な作業です。

プログラミングは初期の頃はテキスト通りに打ち込んで、打ち込んだものがテキストに乗っているサンプルプグラムと入力した文字が間違いがないかを確認するだけですが、マイコンボードを使って自分でプログラムを書く様になると、マイコンの中では全く何をしているのかディスプレイもないので見えませんので何をやっているのか分かりません。
ましてや回路を組んでセンサーを繋げたり、外部のLEDやモーターと言ったものを制御すると出力側の目視で変化がわかるものは良いのですが、センサー側の入力に至っては、マイコンボードとPCを接続してシリアル通信で逐次PCのターミナルソフトに入力されたセンサーの情報を表示する様にプログラミングしなければならず、これも初心者の方にとってはかなりの大作業です。

そこでオススメなのが今回紹介するArduino互換機「Maker UNO」です。


“初心者が陥りがちなデバッグループに救いの手を差し伸べてくれるATMega328P使用Arduino互換機「Maker UNO」” の続きを読む

世界最小!?キーチェーンサイズのArduinoZeroベースのポケットゲームマシン「PocketStar」

今回はGameBoyにインスパイアされたArduinoZeroベースの超小型ゲーム機「PocketStar」をご紹介致します。

この「PocketStar」はArduinoZeroやArduino M0等でも使われているARM Cortex-M0+(Atmel ATSAMD21G18A)の32bitCPUを使った言うなればArduinoボードで、フラッシュメモリ256 KBにSRAMを32KB搭載し、外部クロック48MHzで動作し、0.95インチ(96×64pixel)のOLEDディスプレイを搭載しています。

これとArduinoシリーズの中でも一番売れたArduinoUNO他に使われていたATMega328P(8bit,clock:16MHz,Flash:32kB,SRAM:2kB)と比べるとFlashメモリー空間が8倍に増えクロックスピードも3倍になった事で、Flashメモリーにたくさんのキャラクターをディスプレイに描く為のbitデータをメモリーしておける他、CPUスピードが上がった事で外部メモリ(SDカード等)からデータを読み込んでそれをディスプレイのメモリーに転送して表示すると言った作業も早くなり、昔なら1枚の32×32pixelの絵をSDカードカードから読み込んで表示させるのも、読み込んで表示させているのがしっかりと目視できるくらい遅かったのが、外部I/Oの性能は同じでもCPUの性能が上がった事で非常にスムーズに書き換える事ができる様になり、今回紹介する「PocketStar」の様にストレスなく遊べるゲーム機が作れる様になったのです。


“世界最小!?キーチェーンサイズのArduinoZeroベースのポケットゲームマシン「PocketStar」” の続きを読む

Arduino利用でプログラミングも可能なロシア製のIV-11を6本使ったデジタルVFD時計「FLUORESCENCE」

今回は古い良き時代に活躍したニキシー管を使ったデジタル時計「FLUORESCENCE」をご紹介致します。

この「FLUORESCENCE」はオープンソースでソースを公開する他、比較的手に入りやすい安価な旧ソ連(現ロシア)製VFD ИВ-11(IV-11)を使ったデジタル時計で、ニキシー管(数字や文字や記号を表示する為の冷陰極管(蛍光灯の様なもの…..))を使ったデジタル時計を長年作ってみたいと夢見られたいた方を応援する時計で、基板オンリー、完成済みの製品のみ、電源パーツ付きの完成品の3つの商品が用意されており、完全に部品も1から全部集めて頑張る方用、プログラムだけは頑張っていじってみる方用に分かれています。


“Arduino利用でプログラミングも可能なロシア製のIV-11を6本使ったデジタルVFD時計「FLUORESCENCE」” の続きを読む