忍者ブログ

Fグループ電子工作講座

秋月電子SH7125ボードで始めるマイコン開発

RaspberryPiとは+機材の準備

RaspberryPi(ラズベリーパイ、ラズパイ)はざっくり言うと小さいデスクトップPCです。
数千円で購入できます。


手前がラズパイ3B+、奥はサイズ比較用のRX220ベースボード

サイズが小さく基板むき出しでマイコンっぽい見た目ですが少なくともWinXP頃のパソコンぐらいのスペックがあります。
マイコンと違いモニターやらマウス、キーボードやら挿して使うことができます。
普通のデスクトップPCと違いマイコンの様な汎用IOポートがあります。
マイコンの場合はパソコンでプログラムを作成してマイコンに書き込みますが、
ラズパイの場合はラズパイ上でプログラムを作成して、ラズパイ上でプログラムを実行します。

何ができるのか?

マイコンでできることは大体できます。
・PWM制御等
・UART,I2C等各種通信
・モバイルバッテリーで動きます
※AD変換機能は無いらしい→AD変換が必要な場合は変換IC等を使う

パソコンでできることも大体できます。
・USB機器の接続
・Ethernet、WiFi、BlueToothによる通信
・Webブラウジング(インターネット)等

それなりのスペックがあるので画像処理ができます。

RaspberryPi+OpenCVを用いた画像処理と画像処理結果に基づいた機械の制御を目的として使い方を解説していきます。


OpenCVのサンプルプログラムで顔検出


機材の準備

必要なもの

・RaspberryPi本体
Model3Bまたは3B+(未だ4Bが入手できないため)

・マイクロSDカード
OSとOpenCVで12GB程度必要なので16GB以上を推奨

・電源
5Vで2.4A以上の給電性能を持つマイクロUSB端子の物
ちょっと古いスマホの充電器等

・モニター
HDMI入力があるもの
最初は小型モニターを使わず普通のパソコン用モニター推奨

・マウス、キーボード
USBタイプ
最初は有線タイプを推奨
※Logicool K400 PLUSは専用ドライバや設定無しで初回起動時から動きました

・マイクロSDを編集可能なPC

あった方が良いもの

・ネット回線
各種機能のインストール時に必要となります

・ケース

・放熱板(+冷却ファン)
ラズパイ内でOpenCVをmakeするとCPU使用率100%近くの状態が2~3時間続きます。
放熱なしで重い処理を長時間実行すると温度計のマークが出てフリーズするらしいです、
きっちり放熱しましょう。

パソコン周辺機材以外は秋月電子ロボショップ等にて購入できます。


ラズベリーパイのOSについて

普通デスクトップPCを購入した場合はモニタ等周辺機器を繋いで電源を入れれば起動しますが、ラズパイは起動しません。
本体を買っただけだとOSが付いてきません。
OSを入れるためのSDカードすら付いてきません。
これを自分で行う必要があります。
セットアップ済みのSDカードも売っていますが、今回は自分でセットアップします。

ラズパイには色々なOSを入れることができます。
ラズパイ公式のOS「Raspbian」(ラズビアン)をインストールする事を前提とします。

RaspbianLinuxから派生したDebianから派生したOSです。
根本的なところはLinuxです。
Raspbianはネットで無料配布されています。

Raspbianにはバージョンがいくつかあります。
参考:FabShop様「ラズベリーパイ用OS Raspbianのバージョンの調べ方と歴代バージョンについて
参考:猫屋敷工房様「Raspberry Piの過去の古いバージョンの Raspbian OSのイメージファイルをダウンロードする方法

最近のものだと
 Raspbian Jessie
 Raspbian Stretch
 Raspbian Buster
といった感じです
名前が変更されておりXP Win7 Win10みたいに違うように思えますがWindowsみたいに思いっきり変わったりしません。
メジャーバージョンアップの際にトイ・ストーリーの登場人物の名前が付けられて
 Raspbian 8.x系→Jessie トイ・ストーリー2のカウガールの人形
 Raspbian 9.x系→Stretch トイ・ストーリー3の紫のタコみたいなやつ
 Raspbian 10.x系→Buster トイ・ストーリー1の最後に家に来た犬
となっています。

でもって、古いOSを新しいボードに入れると動かないようです。
B+とJessie(Raspbian 8.x)の組み合わせは正常に動かず、虹色画面+雷マークで止まります

(Jessie最終版でも)
電圧不足だったりカーネルのブートに失敗していても同じ画面で止まるらしいのですが、
B+とJessieの組み合わせの場合は電源を確保しても設定を変更してもどうにもなりません。
B+には素直にStretch(Raspbian 9.x)以降をインストールした方が良いでしょう。

RaspbianとNOOBSの違い

Raspbianについて調べているとNOOBSという単語が出てきます。
NOOBSはラズパイにOSをインストールする際に使用可能なOS管理ソフトです。たぶん。
複数のOSをインストールしたい時に役に立ちます。たぶん。
インストール後も起動時にNOOBSでOSの追加インストール等ができます

Raspbianを直接インストールする時とNOOBSを使ってインストールする時では手順が若干違います。
直接インストールはイメージ書き込みソフト(フリーウェアでOK)を使うだけで、特に難しい事はありません。
NOOBSを使う場合はイメージ書き込みソフトを使用しません。
NOOBSでインストールするとラズパイ上で1.4GBのファイルを4Gに展開するので30分ぐらいかかります。
直接インストールはパソコンで4Gのイメージを書き込むので直接インストールの方が圧倒的に早く終わります。
設定項目は直接インストールでもNOOBSでも一緒なので、NOOBSを使うとなにか楽になるわけではありません。
NOOBSにてインストールすると毎回NOOBSの設定が起動してからRaspbianが起動するので起動が遅くなります。

インストール完了後に起動時間を比較すると

BとJessie8.0: 30秒程度 ※色々追加インストールしてある状態にて

BとStretch9.8: 25秒程度
B+とStretch9.8: 20秒程度

BとBuster10.0: 30秒程度
B+とBuster10.0: 35秒程度

BとNOOBS3.1.1(Buster10.0): 50秒程度
B+とNOOBS3.1.1(Buster10.0): 50秒程度

Raspbianのみを使う場合はNOOBSを利用するメリットを全く感じません。
ということで、直接インストールを前提とします。

エディションの違い

さて、ダウンロードサイトへ行くと
フル版:Raspbian Buster with desktop and recommended software
標準版:Raspbian Buster with desktop
軽量版:Raspbian Buster Lite
の3種類があります
これらの違いはざっくりこんな感じです。

標準版:
お試しソフトとかがほとんど入っていないバージョン
画像処理装置等として使用する分にはこれで問題ありません。
ネットブラウザChromiumなど基本的なソフトはインストールされています。
python/python3やらpipやら必要になる機能も最初から使用可能です。

フル版:
標準版に比べて付属ソフトが多い
マインクラフトとか
Libreofficeとか
Scratchとか
がインストールされています
※Jessie8.0だとMathematicaがインストールされていた

軽量版:
GUI(デスクトップの画面)が無いバージョン
リモートアクセス等の画面不要な場合に使う
Linux初心者がいきなりこれに手を出すのは厳しい気がする

画像処理の開発目的で使うのであればスッキリした標準版が良いと思います。
フル版でも構いません。

使い方に慣れ、開発も完了したらLiteに移植といった感じでしょうか。

古いバージョンを使用する

Buster10.0でも問題ないのですが、試した結果Stretch9.8の起動が早かったのでStretch標準版をインストールしたいと思います。
例によって標準のダウンロードサイトでは最新版しかダウンロードできません

本家の過去データのページ:https://downloads.raspberrypi.org/raspbian/images/
または
日本のミラー(北陸先端科学技術大学院大学):http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian/images/
からダウンロードできます。上の階層へ行けばフル版もあります。

stretchの最終版はraspbian-2019-04-09
 2019-04-08-raspbian-stretch.zip
です。
ダウンロードしておきます。
zipファイルを解凍する必要はありません。

続いてOSのインストール等セットアップを行います。
PR

コメント

プロフィール

HN:
ぼんどF博士
性別:
男性

最新コメント

[02/26 とし]
[02/25 ぼんどF博士]
[02/25 とし]
[10/25 ぼんどF博士]
[10/18 ss400]