パイの日(3.14)に New Raspberry Pi デビュー! [Raspberry Pi]
RASPBERRY PI 3 MODEL B+ ON SALE NOW AT $35
https://www.raspberrypi.org/blog/raspberry-pi-3-model-bplus-sale-now-35/
何が変わったか気になりますよね。記事によると以下の4点が大きな機能アップになるようです。
・Quad Cortex-A53 CPUを 1.2GHz から 1.4GHz へクロックアップ!
・無線LAN 2.4GHz と 5GHz のデュアルバンド802.11acとBluetooth4.2に対応!
・有線LANの速度が3倍!
・PoE (Power over Ethernet) に対応!
CPUのクロックアップに加え、全般的に無線・有線ネットワークが強化されました。イーサーネットケーブルで電力供給できるPoEのサポートは、施設などに使う場合は便利そうです。
しかし、Raspberry Pi はどんどん消費電力があがっていく方向に進化していってますね。ほとんどパソコンと変わらないレベル。省電力命のIoTシステムを作る人にとっては、だんだんとっつきにくくなってきてる感じです。
(´・ω・`)
Raspberry Pi3 コンプリートスターターキット (Basic 16G)
- 出版社/メーカー: TechShare
- メディア: エレクトロニクス
Raspberry Piをはじめよう 第3版 (Make: PROJECTS)
- 作者: Matt Richardson
- 出版社/メーカー: オライリージャパン
- 発売日: 2018/03/16
- メディア: 単行本(ソフトカバー)
カラー図解 最新 Raspberry Piで学ぶ電子工作 作って動かしてしくみがわかる (ブルーバックス)
- 作者: 金丸 隆志
- 出版社/メーカー: 講談社
- 発売日: 2016/07/20
- メディア: 新書
Rasbperry Pi で GPU プログラミング! [Raspberry Pi]
CPUは一つ一つの手続きを逐次処理するのですが、GPUは並列に一気に演算処理するように出来ています。逆に言うとGPUは演算結果が次の処理に影響するような、いわゆる条件分岐が必要な処理はできません。なので行列演算のような単純計算はすごく向いています。
で、最近 Raspberry Pi の GPU を Python からアクセスできることを発見しました。世の中、すごい人がたくさんいますねぇ。
Raspberry PiでGPGPU
https://qiita.com/9_ties/items/2e85318989170f967e4b
ただ、Raspberry Pi の GPU は OpenCL のようにAPI化されておらずアセンブラで記述しなければなりません。ちょっと面倒ですね。Raspberry Pi の GPU を使い倒したい!という勇者はこちらのサイトが参考になると思います。
Raspberry PiのGPUで行列乗算(その1)
https://qiita.com/9_ties/items/15ab7fa198991a61a3a9
Raspberry PiのGPUで行列乗算(その2)
https://qiita.com/9_ties/items/e0fdd165c1c7df6bb8ee#_reference-dd08435a26cddec4955c
時間があったら私もじっくり学習したいところですが、しばらく無理かなー。
しかし、今の学生は幸せですよね。私が学生のころは冷蔵庫くらいの大きさのグラフィック・ワークステーションを皆で使いまわしていたものですが、今や数千円で当時のスパコン並のマシンを入手できるのですから。
(・ε・`。)
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
Raspberry Pi GPU Audio Video Programming
- 作者: Jan Newmarch
- 出版社/メーカー: Apress
- 発売日: 2017/01/17
- メディア: ペーパーバック
Deep Learning with GPUs: For the beginner
- 作者: Alison B. Lowndes
- 出版社/メーカー: LAP LAMBERT Academic Publishing
- 発売日: 2016/12/31
- メディア: ペーパーバック
Raspberry Pi stretch で アクセスポイントの設定が分からない… [Raspberry Pi]
だがしかーし、これにはまだ続きがあったのでした。実はこのラズパイプラレール、jessie版では、場所を選ばず動かせるようにアクセスポイント化していたのです。しかし、"stretch" ではまだ実装をしていませんでした。
最近になり、サークルメンバーから記念行事でぜひ見せたいので、アクセスポイント版を出してくれない?という要望がありました。で、慌てて stretch でアクセスポイント化する方法を探したのですが、、、
ない。
アクセスポイント化するには、"isc-dhcp-server" という dhcp サーバーを使っていたのですが、その設定の仕方が分からない。そもそも、インターフェース名 "wlan0" とか "eth0" とかから無くなっているのだから、どこから手をつけてよいやら。
仕方ないので、jessie 版に戻すことにしました。ぼちぼち調査をして解決策を見つけていきたいと思います。
(`・ω・´)
ラズパイマガジン 2017年10月号 (日経BPパソコンベストムック)
- 作者:
- 出版社/メーカー: 日経BP社
- 発売日: 2017/09/04
- メディア: ムック
Raspberry Pi Zero W Starter Kit
- 出版社/メーカー: ケイエスワイ
- メディア: エレクトロニクス
ラズパイマガジン10月号に掲載されましたー(∩´∀`)∩ [Raspberry Pi]
会社のサークルメンバと分担をして書いたのですが、だいたい6割くらいのページを担当しました。一番苦労したのは車両の電気部分の組み立て。
カメラストリーミングとサーボ制御部分のソフトウェアはこちら。
ブラウザからコントロールできちゃいます。
なんと記事を書いている最中に、Raspberry Pi Zero W がリリースされ、システムを換装。
まぁ、良くがんばったなと。記事を書いている最中のぼやきはこちらを参照ください。
しかし、こうやって記事が形になるのは、ブログのアクセス数が伸びるのとは違う喜びがありますね。でも、記事をもう一度振り返って読みたいとは思いませんが…
( ̄▽ ̄;)
ラズパイマガジン 2017年10月号 (日経BPパソコンベストムック)
- 作者:
- 出版社/メーカー: 日経BP社
- 発売日: 2017/09/04
- メディア: ムック
Raspberry Pi Zero - ラズベリー・パイ ゼロ
- 出版社/メーカー: Raspberry Pi Foundation(Raspberry Pi財団)
- メディア: Personal Computers
Raspberry Pi Zero W Starter Kit
- 出版社/メーカー: ケイエスワイ
- メディア: エレクトロニクス
Raspberry Pi でブラウザーからLチカしてみる [Raspberry Pi]
GPIOをコントロールするために、Python からも使える WiringPi というライブラリをインストールします。WiringPi はインストール時にコンパイルされるため、あらかじめ Python開発用ライブラリをインストールしておきます。
pi@raspberrypi:~$ sudo apt-get install python-dev
WiringPi を Python のPip インストーラーを使ってインストールします。
pi@raspberrypi:~$ sudo apt-get pip install wiringpi2
Downloading/unpacking wiringpi2 Downloading wiringpi2-2.32.3.tar.gz ... snip...
Successfully installed wiringpi2 wiringpi Cleaning up... pi@raspberrypi:~$
GPIOをコントロールする Python ファイルを "~/cgi-bin"に gpio.py として作ります。
#!/usr/bin/env python # -*- coding:utf-8 -*- import cgi import wiringpi2 wiringpi2.wiringPiSetupGpio() wiringpi2.pinMode(18, 1) # sets GPIO18 to output if (wiringpi2.digitalRead(18) == 1): wiringpi2.digitalWrite(18, 0) else: wiringpi2.digitalWrite(18, 1) print "Content-type: text/html\n\n" print "<html><body>" print "<h1>GPIO is %d</h1>" % wiringpi2.digitalRead(18) print "</body></html>"
さて、これを動かすとどうなるでしょうか?
pi@raspberrypi:~$ python -m CGIHTTPServer Serving HTTP on 0.0.0.0 port 8000 ... 192.168.2.103 - - [16/Jun/2017 22:15:35] "GET /cgi-bin/gpio.py HTTP/1.1" 200 - wiringPiSetup: Must be root. (Did you forget sudo?)
うーん、怒られてしまいました。しかし、CGI経由なので root になりようがありません。いろいろ調べてみたところ、セットアップで呼ぶ関数を代えればよさそうです。
#!/usr/bin/env python # -*- coding:utf-8 -*- import cgi import wiringpi2 wiringpi2.wiringPiSetupSys() if (wiringpi2.digitalRead(18) == 1): wiringpi2.digitalWrite(18, 0) else: wiringpi2.digitalWrite(18, 1) print "Content-type: text/html\n\n" print "<html><body>" print "<h1>GPIO is %d</h1>" % wiringpi2.digitalRead(18) print "</body></html>"
PiSetupGpio を PiSetupSys に代えています。これはGPIO設定をGPIOコントロール関数ではなくシステム設定を使いますよ、というおまじないです。なので pinMode もなくなっています。
GPIOの設定は、 CGIHTTPServer を起動する前に行う必要があります。この例では GPIO18 を外部からコントロールできるようエキスポートし、かつ出力に設定しています。
pi@raspberrypi:~$ gpio export 18 out pi@raspberrypi:~$ python -m CGIHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ... 192.168.2.103 - - [16/Jun/2017 23:15:35] "GET /cgi-bin/gpio2.py HTTP/1.1" 200 - 192.168.2.103 - - [16/Jun/2017 23:16:38] "GET /cgi-bin/gpio2.py HTTP/1.1" 200 - 192.168.2.103 - - [16/Jun/2017 23:18:12] "GET /cgi-bin/gpio2.py HTTP/1.1" 200 -
無事に動いたようです。少し見苦しいですが、動いている様子を撮ってみました。
さて、次はサーボモーターをコントロールしてみようかな。
(^_^)/~
Raspberry Pi 2 Server Essentials
- 作者: Piotr J Kula
- 出版社/メーカー: Packt Publishing
- 発売日: 2016/04/29
- メディア: ペーパーバック
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
OSOYOO(オソヨー) DIY センサーモジュール キット 常用20個 for Arduino/raspberry ボード 学生実験に最適
- 出版社/メーカー: vership
- メディア:
Raspberry Pi で簡単 CGI ♪ [Raspberry Pi]
Apache を入れて設定してと、ちょっと面倒だなぁと思っていたのですが、Python を調べているうちに簡単にできることが分かってきました。
手順はいたって簡単。ホームディレクトリに "cgi-bin" というディレクトリを作り、Python のファイルを作って、ホームディレクトリで "CGIHTTPServer" というコマンドを実行するだけです。
順を追って説明します。
1)ホームディレクトリに "cgi-bin" というディレクトリを作ります。
pi@raspberrypi:~$ mkdir cgi-bin
2)"cgi-bin" の中に python ファイルを作成します。
pi@raspberrypi:~ $ cd cgi-bin pi@raspberrypi:~/cgi-bin $ vi test.py pi@raspberrypi:~/cgi-bin $ chmod 755 test.py
編集した test.py に実行権限を与えることを忘れないようにしてください。test.py の中身は、"Hello from CGI" を表示する単純なものです。
#!/usr/bin/env python # -*- coding:utf-8 -*- import cgi print "Content-type: text/html\n\n" print "<html><body>" print "<h1>Hello from CGI</h1>" print "</body></html>"
注意が必要なのは、Content-type の最後の2重改行"\n\n"です。2重改行がないとブラウザはHTML文書と認識できません。必ず2重改行をつけるようにしてください。
3)Python で "CGIHTTPServer" を実行します。
pi@raspberrypi:~ $ python -m CGIHTTPServer Serving HTTP on 0.0.0.0 port 8000 ...
-m はモジュールの指定です。デフォルトではポート番号が8000番になっています。
4)PCのブラウザから Raspberry Pi のCGIにアクセスします。
URLは、Raspberry Pi に割当たっているIPアドレスを指定します。ポート番号を指定するのを忘れないように注意してください。
あっけなくCGIサーバーが出来上がりました。面倒な手続きは一切なし。Linuxの世界もここまできたかー。
次は外部機器をコントロールできるように、CGI経由でGPIOを制御してみたいと思います。
(^_^)/~
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
【Pi Zero+Base Kit】 Raspberry Pi Zero+Base Kit+SBcase
- 出版社/メーカー: きばん本舗
- メディア: エレクトロニクス
Raspberry Pi Camera V2 でストリーミングを試してみた [Raspberry Pi]
ということで試してみました。こちらの記事を参考にさせてもらいました。
mjpg-streamerでraspberryPiのカメラからストリーミングをする方法
http://portaltan.hatenablog.com/entry/2016/11/29/185600
いやー、セットアップはとっても簡単ですね。大分前にエジソンでmjpg-streamer を試したときには、もう2度とするかというくらい大変だった記憶があるのですが、今や流れ作業です。
ということで、mjpg-streamer のインストール方法を説明します。April 2017 バージョンの Raspbian で、WiFiの設定とカメラの接続が出来ていることが前提となります。
最初に mjpg-streamer のソースコードをダウンロードしてきます。
pi@raspberrypi:~$ git clone https://github.com/jacksonliam/mjpg-streamer.git mjpg-streamer
次に libjpg と cmake をインストールします。cmake は環境非依存のビルドツールです。
pi@raspberrypi:~$ sudo apt-get install libjpeg8-dev cmake
mjpg-streamer をビルドします。
pi@raspberrypi:~$ cd mjpg-streamer/mjpg-streamer-experimental pi@raspberrypi:~/mjpg-streamer/mjpg-streamer-experimental$ make
さて、準備が出来ました。mjpg-streamer を起動しましょう!
pi@raspberrypi:~$ LD_LIBRARY_PATH=~/mjpg-streamer/mjpg-streamer-experimental/
pi@raspberrypi:~$ ~/mjpg-streamer/mjpg-streamer-experimental/mjpg_streamer -i "input_raspicam.so" -o "output_http.so -p 9000 -w ~/mjpg-streamer/mjpg-streamer-experimental/www"
MJPG Streamer Version.: 2.0
i: fps.............: 5
i: resolution........: 640 x 480
i: camera parameters..............:
Sharpness 0, Contrast 0, Brightness 50
Saturation 0, ISO 0, Video Stabilisation No, Exposure compensation 0
Exposure Mode 'auto', AWB Mode 'auto', Image Effect 'none'
Metering Mode 'average', Colour Effect Enabled No with U = 128, V = 128
Rotation 0, hflip No, vflip No
ROI x 0.000000, y 0.000000, w 1.000000 h 1.000000
o: www-folder-path......: ~/mjpg-streamer/mjpg-streamer-experimental/www/
o: HTTP TCP port........: 9000
o: HTTP Listen Address..: (null)
o: username:password....: disabled
o: commands.............: enabled
i: Starting Camera
Encoder Buffer Size 81920
ストリーム映像は、ブラウザ上で下記のURLにアクセスすれば見ることができます。IPアドレスは Raspberry Pi に割当たっているIPになります。
http://xxx.xxx.xxx.xxx:9000/?action=stream
※ IPアドレスは、Raspberry Pi に割当たっているIPアドレスを指定。
実際にデスクトップでキャプチャした画像がこちら。
そこそこの FPS は出ているようです。実用上は問題なさそうですね。
(^_^)/~
関連記事
久しぶりに Raspberry Pi を動かす~再インストールからWiFi設定まで~
http://makers-with-myson.blog.so-net.ne.jp/2017-05-27
Raspberry Pi Camera V2 を動かしてみた
http://makers-with-myson.blog.so-net.ne.jp/2017-05-29
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
Wireless Streaming Video Server (English Edition)
- 出版社/メーカー: Bill Pretty
- 発売日: 2016/05/31
- メディア: Kindle版
Raspberry Pi の SSH 接続ではまる…(´・ω・) [Raspberry Pi]
最新の raspbian では SSH はデフォルトでオフになっているようなので、raspi-config で SSH をオンにしたのですが、待てど暮らせど TeraTerm から接続できない。
おかしいなと思ったので、Cygwin からアクセスしてみたら、エラーになっていました。
$ ssh pi@192.168.2.111 Read from socket failed: Connection reset by peer
少し調べてみると、最新の raspbian では /boot に ssh ファイルを作らないと、SSHが有効にならないそうです。そこで、Raspberry Pi にログインして /boot に sshファイルを作り再起動しました。
pi@raspberrypi:- $ sudo touch /boot/ssh pi@raspberrypi:- $ ls /boot/ssh /boot/ssh pi@raspberrypi:- $ reboot
sshを再作成し SSH を再設定しても、相変わらず PC からアクセスできない。Cygwinでアクセスしても同じエラーメッセージではじかれます。いろいろと調べ上げ、ようやく見つけた解決策は下記。
(1) raspi-config で SSH をオフ
(2) sudo rm /etc/ssh/ssh_host_* && sudo dpkg-reconfigure openssh-server
(3) sudo touch /boot/ssh
(4) raspi-config で SSH をオン
これで、ようやくTeraTermからログインすることができました。Raspberry Pi はOSの更新が頻繁なので、少し前の手順がすぐに陳腐化しますね。キャッチアップするのが大変です。
(´ Д`;)
これ1冊でできる! ラズベリー・パイ 超入門 改訂第4版 Raspberry Pi 1+/2/3/Zero/Zero W対応
- 作者: 福田 和宏
- 出版社/メーカー: ソーテック社
- 発売日: 2017/06/03
- メディア: 単行本
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
Raspberry Pi Camera V2 を動かしてみた [Raspberry Pi]
Camera を Raspberry Pi 2 Model B に装着しました。フレキの向きに注意してコネクタに装着します。
Camera を動かすには、カメラインターフェースを有効にする必要があります。raspi-config を立ち上げて、カメラインターフェースの設定を行います。
pi@raspberrypi:~$ sudo raspi-config
メニューから、「Interfacing Options」を選択します。
画面が遷移したら「P1 Camera」を選択します。これでカメラが有効になりました。あとは指示にしたがって設定し、メニューを抜けてリブートします。
さて、動くかなー。以下のコマンドで静止画を取得できます。
pi@raspberrypi:~$ raspistill -o still.jpg
撮影した画像がこちらです。少しピンぼけてますが、思ったよりも静止画が綺麗に撮れました。室内光だけだったので、少しノイズがのるかなと思ったのですが、さすがに感度がいいですね。
やはりカメラがあるって楽しいですね。せっかくWiFiも使えるので、次はストリーミングにチャレンジしてみようかな。
(^_^)/~
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
サインスマート 広角 魚眼レンズ カメラモジュール Camera Module Raspberry Pi用
- 出版社/メーカー: サインスマート(SainSmart)
- メディア: エレクトロニクス
久しぶりに Raspberry Pi を動かす~再インストールからWiFi設定まで~ [Raspberry Pi]
インストールされている Raspbian はかなり古いので、最新のものをダウンロードしました。2017年4月10日のバージョンの Raspbian が最新のようです。
昔に比べるとダウンロードが早くなりましたね。1時間ほどでダウンロードできました。Zip を解凍すると、2017-04-10-raspbian-jessie.img が生成されますので、Win32DiskImage でSDカードに書き込みます。
次に行うのは、WiFiの設定です。手持ちの WiFi ドングルを Raspberry Pi にさして認識するか確認します。
lsusb コマンドで WiFi ドングルを認識しているか確認します。
pi@raspberrypi:~$ lsusb Bus 001 Device 005: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) Bus 001 Device 004: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM Wireless LAN Adapter [Ralink RT8070] Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
BUFFALO の WIFIドングルをきちんと認識したようです。
我が家の WiFi は少し前に買い替えたので、昔の設定は使えません。新たに設定しなおす必要があります。最初に、/etc/network/interfaces を修正します。
pi@raspberrypi:~$ sudo vi /etc/network/interfaces # interfaces(5) file used by ifup(8) and ifdown(8) # Please note that this file is written to be used with dhcpcd # For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf # Include files from /etc/network/interfaces.d: source-directory /etc/network/interfaces.d auto lo iface lo inet loopback iface eth0 inet manual allow-hotplug wlan0 #iface wlan1 inet manual <-コメントアウト iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf allow-hotplug wlan1 iface wlan1 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf ~
家のWiFi が見えるか確認します。昨今、近隣のおうちのWiFiも拾ってしまうので grep で表示を簡略化します。
pi@raspberrypi:~$ iwlist wlan0 scan | grep "お家のWiFiのSSID" ESSID: "お家のWiFiのSSID"
次に wpa_passphrase で wpa_suppricant.conf に設定する内容を出力します。
pi@raspberrypi:~$ wpa_passphrase お家のSSID パスワード network={ ssid="お家のSSID" #psk="パスワード psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx }
出力された network 以下の内容を wpa_suppricant.conf に設定します。
pi@raspberrypi:~$ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="お家のSSID" #psk="パスワード" psk=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx }
設定したら、WiFI をオフ、オンします。
pi@raspberrypi:~$ sudo ifdown wlan0 ... snip ... DHCPRELEASE on wlan0 to 192.168.2.1 port 67 pi@raspberrypi:~$ sudo ifup wlan0 ... snip ... bound to 192.168.2.111 -- renewal in 14814392 seconds.
"192.168.2.111" でアドレスが取れたようです。これで一通り設定完了。ようやく使えるようになりました。次はカメラを動かしてみるかなー。
(^_^)/~
Raspberry Pi 3 MODEL B 【RS正規流通品】
- 出版社/メーカー: Raspberry Pi
- メディア: Tools & Hardware
【Pi Zero+Base Kit】 Raspberry Pi Zero+Base Kit+SBcase
- 出版社/メーカー: きばん本舗
- メディア: エレクトロニクス
Elecrow 5インチHDMI 800x480 TFT ディスプレイモニター タッチスクリーン Raspberry Pi Banana Pi対応
- 出版社/メーカー: other
- メディア: エレクトロニクス