Ruby 0
全20件 (20件中 1-20件目)
1
トランジスタ技術 2018年 3月号 特集 マンガ超入門!AI電脳製作[基板付き] を買った。付録基板として、AIスピーカー制作用プリント基板がついていたのと、別冊のアナログウェア No.5 「クリーン&高効率! 小型IoT電源設計ノウハウ」に、興味を持ったから。ちなみに、部品を買い集めるのと、組み立てが面倒だったので、ベーシック基板完成キットを買ってしまった。部品を自分で買い集めるだけでなく、こういうキットが別に販売されるのはいいなと思う。2018トラ技連動AIスピーカー 特集ページ、ラズベリーパイと I2S マイクで作る AI スピーカ。時間を見つけてやってみようと思う。Amazon Echo や Google Home については、興味はあったのだけれど、マイクで音を拾わせるのに抵抗があって、まだ買ってなかったが、技術的には興味があるので、ちょっと、今回、試してみようかなというところ。アナログウェアの電源特集の方は、やっぱり敷居が高い。無理。ヘタレ。後学のためにパラパラとめくる程度。【ラズベリー・パイ】Raspberry Pi 3 Model B 日本製 アールエスコンポーネンツ 国内正規代理店品
2018.03.12
コメント(0)
いまさらながら Raspberry Pi 3 を買って試してみている。Element14版の方が安いが、ちょっとだけ高い RS版のを気分で買った。Raspberry Pi3 Model B ボード(Element14版)RaspberryPi3 ModelB (RS製)ラズベリーパイCPU も速くなったので、それなりにデスクトップとしても使えるレベルになってきている。SDカードはブートだけにして、SSD をメインに使うことにした。これで、それなりに安全で快適になった。今、このブログも Raspberry Pi 3 で書いている。このレベルのものが、電源とか SSD とか、あれこれ含めて 1万円程度あれば買えるってのは、すごい時代になったものだと思う。まあ、FireFox でタブをいくつも開いてウェブサーフィンとかは辛いけど、テキストベースでプログラム書くとか、文章を書いたりする端末としては十分。とはいえ、工作の制御用とか、センサーの値を無線で送るとかそのレベルの話しならば、もっと安いものの方が使い捨てしやすくていいのだけど。Raspberry Pi Zero は、そのうちまともな価格で入手できるんだろうか。。。。Raspberry Pi 3 だと 10個とかまとめて買うとそれなりの金額になってしまうので、ちょっと躊躇する。で、Raspberry Pi をそういう単機能の使い捨て用に使うのはあっさりあきらめて、ESP-WROOM-02 を使ってみることにした。とはいえ、最初から裸のチップだけ買ってやるのは敷居が高いので、スマホで操作する改造ミニ四駆製作キット「MKZ4」 を買ってみることにした(先ほどオンラインで注文した)。ESP-WROOM-02 は、とにかく安いから、使えるようになりたい。センサーからのデータ送信とか、ちょっと何か動かしたり程度はこれでいきたい。espressif ESP-WROOM-02 Wi-Fiモジュールespressif ESP-WROOM-02ピッチ変換済みモジュール(フル) Wi-Fiモジュールスイッチサイエンス ESP-WROOM-02開発ボード(ピンソケット実装済)ESPr Developerこの手のことは流行りだからというより、老後に備えてあれこれ作ろうかという方向なのでした。
2016.08.18
コメント(0)
Alpine Linux を Raspberry Pi にインストールしてみた。インストールは、alpinelinux.org/wiki/Raspberry_Pi に書かれているようにすれば大きな問題はないが、Persistent storage の設定は最初に必ずすること。そうしないとディスクがすぐにいっぱいになってしまう(やってしまった)。残念だったのは、Chromium も Firefox も apk でインストールできなかったこと。そのため、Kiosk 端末用に使うのは諦めることにした。Dillo は apk でインストールできたが、ちょっとさみしい。Raspberry Pi で alpine linux を使うのは当面諦めることにして、lxc の環境だけで使っている。余計なものが入っていないので軽くてよいのだが、逆にいうと、あれこれインストールしないと Python 用の環境を整えられないので、ある程度の自己解決力がある人でないと使うのは大変かもしれない。多少慣れるまで苦労したとしても、ディスク消費量がかなり違うので、とりあえずあれこれ試している状態。/var/lib/lxc の大きさを比べてみると、次のような差が出た。# du -s alpine01/460732 alpine01/lxc # du -s ubuntu011393100 ubuntu01いくつも環境を作ると、かなり大きな差になってくる。Raspberry Pi といえば、64bit対応のRaspberry Pi 3発売。性能10倍で価格据え置き&完全互換、WiFi / Bluetoothオンボード これは買わなくては。
2016.02.29
コメント(0)
Raspberry Pi を使って、情報表示機能付の鏡を作ってみようかと の続き。マジックミラー(2 way mirror) を使うと、ちょっと高いので、もう少し安くできないかと、賞状用の額縁にシルバーミラーを貼り付けたらどうかと試してみた。結論から書くと、よほど器用かつお金を節約したい人でない限りは、素直にマジックミラーを買ってしまった方がよいかもしれないということ。額縁のガラスにシルバーミラーを貼り付けたて撮った写真がこれ。フィルムの張り方が下手だったので、あちこち気泡ができてしまった。スマホを手で持っているところなど、ブチブチになっている。加えて、鏡としては一応使えるというレベルで、白く曇った感じであまりきれいでない。とはいえ、千数百円でできるのでコスト的にはいけているかな。とりあえずは、これをベースにやってみることにする。使い続けるようであれば、たぶんマジックミラーを買うことになると思う。実験として、スマホを直接置いて撮ってみた。いけそうな感じ。あとは、何をどう表示するかと、固定の仕方を考えれば、なんとなくそれっぽいものが簡単にできそう。でも、スマホだとガラス越しに操作ができないから、やっぱり、Raspberry Pi とディスプレイをつけてやってみるかな。
2016.01.09
コメント(0)
Build a Magic Mirror with a Raspberry Pi and an Old Monitor とか、Build Your Own 'Smart Mirror' with a Two-Way Mirror and an Android Deviceを見たら、そういうものを作りたくなってしまった。鏡の機能を保ったまま、情報を表示するとなると、当然表示できる情報量は少なくなる。けれども、生活の中に溶け込んだ情報表示端末として鏡を使うのは良いアイデアだと思うので、小型のものにチャレンジしてみることにした。そこで必要となるのが 2 way mirror なのだが、日本語で言うとマジックミラー。マジックミラーは、和製英語ってことね。楽天で探してみると、鏡 ミラー 洗面 インテリア IVY で買えることが分かったが、小型のものでも、それなりのお値段がする。もう少し安上がりにできないかなあということで、賞状用の額縁(ガラス付)とミラーシールドにミラーフィルムを貼ったら、できるのか試してみることにした。思い付きとしてはいいかなとは思うのだけど、意図した通りになるか不明。うまくいかなかったら、素直にマジックミラーを買うことにする。でもって、単に情報を表示するだけでもいいのだけれど、顔認識の機能をつけたり、喋らせたりしたら、飽きずに使い続けられるようなものになるかなと。そのうち、Raspberry Pi Zero も手に入れて、制御は Raspberry Pi Zero で十分かなとか思っている。でも、いつになったら普通に買えるようになるか分からない。。。。小型のもなら、Raspberry Pi とディスプレイだとかさばるから、表示用には古いタブレットでもいいかもしれない。Raspberry Pi はサーバーとして、鏡とは離れたところに置く。【条件付き送料無料】【カーフィルム】【切売】【ウィンドウフィルム】【ミラーフィルム】シルバーミラー15(マジックミラー) 50cm幅×長さ1m単位切売いつもお求めやすい価格で!★オフィスの強い味方!オフィス31★フ-KW-201-H【ナカバヤシ】 木製賞状額 金ケシ 賞状B5判 箱入り フ-KW-201-H 【掲示用品】 【フレーム・額縁】送料無料 マジックミラー 国産のマジックミラーマジックミラー 国産のマジックミラー(板厚 3ミリ)四角形(長方形)糸面取り加工(面取り幅1~2ミリ):204mmx305mm
2016.01.03
コメント(0)
Raspberry Pi 用 PoE基板があればイーサネットケーブルから電源供給できるから電源を気にしなくて済むようになる。あちこちしかけるのにちょうどいい。とはいえ、Raspberry Pi 本体と合わせて 1万円ぐらいになっちゃうけど。無線LANの AP をつくるかな。これにセンサーをつけたり、カメラをつけて防犯カメラとかにするとか、いろいろできそう。そういえば、まだカメラをつけてあれこれしてなかった。
2015.03.25
コメント(0)
Yahoo オークションで 10インチのタッチパネルディスプレイ 3台が送料込で1万6千円ほどで買えたので、Raspberry Pi につないでみた。ディスプレイの入力は VGA なので Raspberry Pi に VGA ディスプレイを接続のコンバータで接続した。タッチパネルの出力は RS-232C だが、これはコンバータをまだ持ってないので年が明けたら購入してつないでみる予定。うまくいくといいのだけど。組み込み用の処分品なのか、新品なのに安く買えてラッキーだった。ただし、裏側はしっかりした金属筐体.作りはちゃんとしていて、けっこう重い。まあ、持ち運ぶものじゃないのでいいけど。ちょっとはまったのが、画面を縦に表示するところ。最初 "xrandr -o right" とかやって画面を回転させようとしたのだが、どうにもうまくいかない。いろいろ調べてみたのだが分からず。そもそも、最初から 90度回転させておけばいいじゃんと思い直し、/boot/config.txt に 「display_rotate=1」を加えて、最初から縦に表示することにした。まだ、タッチパネルがうまく動くかわからないが、なかなかよい感じ。あとは、どういうケースに入れるか。ちなみに、なぜ縦置きにしようと思っているかといえば、ひとつは、向かって右側の緑色のランプがついているところが、本当は下側で、ここに VGA ケーブル、RS232Cケーブルをつけるので、それだとよっぽどのケースにしないと不安定になりそうだから。逆さにするか、縦置きにするか、まだ迷ってる。ここに表示するアプリ次第かな。
2014.12.30
コメント(0)
Raspbian は、最初から教育用にいろいろできるようインストールされるので、必要なものだけインストールしたい。ということで、minibian (Minimal Raspbian Image for Raspberry Pi) をインストールしてみることにした。512Mb SDカードに入ってしまう。boot にかかる時間は 21 秒。情報はhttp://minibianpi.wordpress.com/から。ダウンロードは、sourceforge: MINImal raspBIAN image for Raspberry Pi。ベースは Raspbian と同じなので、安心して使うことができそう。他に最小限のインストールということでは、ネットからインストールするraspbian-ua-netinstもある。無人インストールで、インストールするものを指定できるし、こっちもいいかもしれない。とりあえず、minibian のイメージをダウンロードして解凍、Win32 Disk Imager で SDカードに書き込み。起動してみる。確かに起動が速い。root/raspberry でログインして眺めてみる。ほんとうに最低限のものだけインストールされている感じ。raspi-config や rpi-update さえ入っていないので、apt-get install で両方インストールして、raspi-config で初期設定をあれこれして(このあたりは通常の Raspbian と同じ)、あれこれインストールしてみると、2GB超えてしまった。キオスク端末にしたいので、X環境を入れたいから、ある程度大きくなっちゃうのね。python2.7-dev とかもインストールしてるし。まあ、4GB の SDカードでも運用できそうな感じなので満足。raspbian ベースにインストールしていくと、余裕で 4GBは超えてしまうから。GUI不要なら 2GBのSDカードで十分いけそう。その他、参照。軽量 Raspberry Pi OS Minibian Setupminibianに感動した最小サイズの自動ネットインストール版のRasbian How to build your own OS with Raspbian Net Installraspbian-ua-netinst - Raspbian unattended netinstaller
2014.12.26
コメント(0)
Raspberry Pi をいじるとき、通常、無線LAN経由で ssh 接続してあれこれしているのだが、時折、接続を受け付けなくなるときがある。Raspberry Pi にはリセットスイッチも電源スイッチもない。USBケーブルをつなげば、即ONになる。USBの電源を抜けば落とせるが、ちゃんとシャットダウンしたいから、あまりやりたくはない。ということで、ボタンを押せばシャットダウンするようにしてみた。Google で 「RaspberryPi シャットダウン ボタン」で検索すると、Raspberry Pi にシャットダウンボタンをつけるGPIOを使ったシャットダウンスイッチ (2014/05/03)Raspberry Piにshutdownスイッチ追加Raspberry piに特定のUSB機器を差し込むと電源を落とすデーモンをPythonで作る肝になるところは、割り込みを使った、GPIO.wait_for_edge(23, GPIO.FALLING) 引用元の記事も読んでおくと役立つ。How to use interrupts with Python on the Raspberry Pi and RPi.GPIOHow to use interrupts with Python on the Raspberry Pi and RPi.GPIO – part 2How to use interrupts with Python on the Raspberry Pi and RPi.GPIO – part 3あと、raspberry-gpio-python も。2,3番目のは、5秒間ボタンを押したときだけシャットダウンするもので、LEDも点滅させる。2番目のはLuaJIT を使ってプログラムが書かれているのに興味をひかれた。4番目のは、人が出入りする場所においてあるときに間違ってボタン押されてシャットダウンされないのがいいかもしれないと思った。でも、USBさせるようにしておくのもあれだから、パソリつないで Raspberry Pi と Sony RC-S380/P、nfcpy で NFC カードの IDm を読み取るで、特定のカードをかざしたらシャットダウンもありだなとか思った。でも、シンプルにボタンでいいや。何はともあれ、残念なところは、シャットダウンしても電源OFFにはならないのだよね。電源オフまでするとなると、もうちょっとコストがかかるパーツを買う必要がある(自作できないこともないだろうけど)。この手のものPi Supply Switch – On/Off Power Switch for Raspberry Pi。どうせ、ここまできたらリモコンでオフしたいよねってなったら、RemotePi Board 2015みたいなものもある。用途によっては、やっぱり、こういう電源ON/OFFまでできるようにしておいた方がいいだろうけど、微妙だな。やめとこ。
2014.12.22
コメント(0)
Raspberry Pi GPIO Sensing: Motion Detectionを参考にしながら、赤外線モーションセンサーを使ってみる。センサーは、HC-SR501(楽天では買えなかったのでamazon で買った)。精度は約7m、検知範囲は、 110°x 70°。人が部屋に入ってきたり、扉に近づいたら、検知して知らせるようなものができる。あるいは、10分間、動作が検知できなかったら、誰もいなくなったと判断して何かするとかにも使えそう。まずは、センサーに3本のケーブルをつける。手持ちのケーブルに茶がなかったので記事とは色が違うケーブルをつないだ。赤; PIR-VCC (3-5VDC in), 黄; PIR-OUT (デジタル出力) and 黒; PIR-GND(グラウンド).つなぎ方は記事に書かれた通り。ブレッドボードを使わずに直結でもよいが、あとから色々付け加えるときのためにブレッドボードを使ってつないでいる。ソースコードも書かれている通りで動いた。肝になるのは、次の箇所。GPIO.add_event_detect(PIR_PIN, GPIO.RISING, callback=MOTION)while ループで1秒置きにチェックする方法だと負荷になるので、GPIOの割り込みでイベントを検知して、コールバック関数を呼ぶ方法が使われている。"edge detection"は、hight から low の "falling edge" と、low から high の "rising edge" があるが、今回は low から high なので GPIO.RISING を指定している。これだけだとなんなので、LEDを光らせることにする。デジタル出力に、LEDのプラスをつないで、そこから抵抗につないで、GND につなぐ。そうすると、モーションを検知した時に LED が点灯するようになった。センサーに反応したら何かをするのか、データを蓄積して活動量をグラフ化するか。何に使うかなって、買ってから考え始める。写真を撮るとか、まだカメラ買ってないからできないしなぁw
2014.12.21
コメント(0)
royweb を使うと、簡単にリアルタイムデータをグラフ化できる。royweb github。参考: royweb についてのスライド。pip install royweb でインストール。royweb コマンドを実行して 172.0.0.1:8080 をブラウザで表示。$ roywebStarting ROyWeb with PID 28784Running on 127.0.0.1:8080Listening for UDP data on port 9999RaspberryPi で室温などを取得して UDP で port 9999 の royweb のサーバープロセスにデータを送信してやると、自動的にグラフが更新される。データは、次のように簡単に送れる。from royweb.networking import PacketHandlerph = PacketHandler("127.0.0.1", 9999)ph.send('名前', 値, '単位', '記述')とってもお手軽で素晴らしい。
2014.09.28
コメント(0)
Raspberry Pi をもう少し他の用途にも使ってみようかなということで、XBMC を使ってみることにした。XBMC は、オープンソースのメディアセンターで、元は、Xbox 用に作られたもの。その後、Xbox はサポートからはずれ、名前も Xbox Media Center から XBMC に変更されていたが、XBMC 14 からは Kodi 14 と名前が変わることになる。ちょうど使ってみようと調べ始めたところでこの名前が変わるタイミングとなった。マルチプラットホームな総合メディアセンターシステムXBMCが名前をKodiに変えて完全にXbox臭を一掃。XBMC Is Getting a New Name – Introducing Kodi 14。名前を変えるのは、あれこれ大変だろう。なお、Kodi 14 のコードネームは Helix。Kodi 14.0 Helix alpha2 はここからダウンロードできる。が、とりあえず、旧バージョンを使ってみる。XBMC 13.2 Gotham – Final release。最初は、Linux のデスクトップPC にインストールしてみた。HOW-TO:Install XBMC for Linux。xbmc-standalone を起動して、動かしてみる。ドキュメントを読まなくても適当にいじっていれば基本的なところでは使える感じ。XBMC Wiki Manual。XBMC Quick Start Guide。でも、あれこれカスタマイズしようとすると、ドキュメントを読んだり、動画を見たりとか必要かな。初歩的なところで動画を見てみる。カスタマイズとかは、こんな感じ。インストールするディストリビューションは、どれにするか。Raspbmc か、OpenELEC か、Xbian か。Raspberry Pi: Openelec Vs Raspbmc を見て、OpenELEC が Raspbmc より若干軽そうなのでとりあえずインストールしてみた。xbian は NOOB からインストールできなかったのでためしてない。ちょこっと使ってみて、まあ、よく作りこんであるし、周辺への広がりもあっていいのだけど、単に Youtube をスマホで見ているのを大型画面に飛ばして見るよ的な Chromecast でも用途を限って見れば使い勝手的には、そっちでもいいやという感じがしないでもない。逆に、音楽や動画をたくさん持っていて、本格的なメディアセンターで自由に見たいというのであれば、XBMC (Kodi) のようなものがよいだろうし。自分の場合、PC がメインで常に動かしていて 27インチのディスプレイにつないでいるから、あまり必要ないかもしれない。30分でRaspberry PiからXBMCメディアセンターを作る方法XBMCを使ってみようRaspberry PiでリモコンYoutubeプレーヤーを作るOfficial XBMC Remote
2014.08.21
コメント(0)
(1) Pasori で NFC カードの ID を読み取って、(2) LED をチカっと光らせて、(3) サーバーに登録情報を取りに行って、(4) その人へのメッセージを音声合成で読み上げつつ、(5) ディスプレイに何か表示するというような端末を作りたいと思って少しずつチャレンジしている今日このごろ。(1)-(5) について、だいたいのところ目処がたったわけだが、(5) について無人で動かしっぱなしにできるように洗練させていきたいところ。ということで、kiosk をキーワードにして調べてみた。ちょこっと Google で検索すると、いろいろ見つかった。画面の印象としては、PiR.tv の画面がシンプルできれいでいいので参考にするかな。node.js で jquery などを使って作られている。この画面にカードを認識したら、ピッとその人向けへの情報が表示されるイメージ。あれこれ見たもの次のサイトを参考にした。Use Your RaspberryPi to Power a Company DashboardUsing a Raspberry Pi Computer to Build Cheap Digital SignageHow To Create Kiosk ModeRunning chromium in kiosk modeRaspberry Pi Kiosk Screen Tutorialraspberry pi kiosk terminal を作るRaspberry Piでkiosk端末Rapberry PIによるデジタルサイネージの構築と研究Chrome を使う 1Chrome をインストールして使う方法をまずは試す。LXDE の autostart で chromium を起動するように設定すると、ログイン後、startx すると chromium が全画面表示で起動される。スクリーンセーバーは起動しないようにしておく。でも、LXDE もいらないんじゃかろうか。ということで 2 へ。Unclutter は、マウスポインターを消してくれる。sudo apt-get update && apt-get upgrade -ysudo apt-get install chromium x11-xserver-utils unclutter/etc/xdg/lxsession/LXDE/autostart を次のようにする。@xset s off@xset -dpms@xset s noblank@chromium --kiosk --incognito http://some.web./etc/lightdm/lightdm.conf に追加する。[SeatDefaults]...xserver-command=X -s 0 -dpmsChrome を使う 2デスクトップはいらないんじゃないのということで、Chromium のみを起動する。.xinitrc を編集する。unclutter -idle 15 -root &xset -dpms &xset s off &exec chromium --kiosk --incognito http://some.web.と設定しておいて、su – myuser -c “startx” &exit 0Midori を使うMidori をブラウザとして使うと単体で起動したときに完全な全画面表示ができないので、MobilityLab/TransitScreenのように、matchbox-window-manager を使うというのがよいのかな。単体で全画面表示にしてみる。xinit /usr/bin/midori -e Fullscreen -a http://dev.mobilitylab.org/TransitScreen/screen/index/11matchbox-window-manager を使ってみる。xset -dpmsxset s offunclutter &matchbox-window-manager &midori -e Fullscreen -a http://some.web.そうするとちゃんと全画面表示できた。ちなみに、TransitScreen は、Open Transit Data and APIsを使って、リアルタイム(実際には20秒ごと) に交通機関の乗換の情報を表示するようなもの。Experimental real-time transit screens come to Arlington and DC を参照。ちなみに、電源を入れたら自動的にログインしてキオスク端末化するには、RPi Debian Auto Login のようにした。/etc/initab を編集して、#1:2345:respawn:/sbin/getty 115200 tty11:2345:respawn:/bin/login -f pi tty1 >/dev/tty1 </dev/tty1 2>&1/etc/rc.local の exit 0 の前に次の行を追加。su -l pi -c startxとりあえず、Rasperry Pi を起動するとブラウザが全画面で開くようになった。
2014.04.20
コメント(0)
『Raspberry Pi [実用]入門』の「喋る温度計制作」で Open JTalk で音声合成というのあったので、音声合成を試してみることにした。Open JTalk といえば、かなり前に Open JTalk を Python から使ってみるでNonVisual Desktop Access (NVDA) を使ってやってみたことあったなぁ。最近、家で Windows をほとんど使ってないので、今回は試してない。とりあえずインストールsudo apt-get install open-jtalk hts-voice-nitech-jp-atr503-m001 open-jtalk-mecab-naist-jdic喋らせるためのパラーメーターがやたら多いのでスクリプトにしなきゃならないレベル(1.0.6 からは .htvoice ファイルがあればパラメータをコマンドラインで指定しなくてよいようだけど)。喋らせてみると、思ったよりも進化していて、それなりに聞けるレベル。使えるかも。でも遅い。Raspberry Pi が遅いから仕方ないのね。声は男のモデルの声なので、MMDAgent の mei も使ってみた(1.3.1 を使った)。Open JTalk 1.0.6 なら Open JTalkでテキストスピーチ on Debian など参照。試しに手元の PC で同じことを試してみると、許容範囲の遅延で出力できた。比較的速いマシンに Raspberry Pi と他のサーバーとの連携を考える のようにしてテキストを渡して、音声合成やらせて NFS 上にファイルを書きだして、音声ファイルを Raspberry Pi で読み込んで出力させるってのもありかなと。書き込みが少なくなる分だけ Raspberry Pi の SDカードの劣化も防げるし、そうするかな。AquesTalk Pi も試してみた。スピード的には実用的でいい。音声合成LSI 「AquesTalk pico LSI」 とか使って電子工作ってのもありかもしれない。とりあえず、ソフト版の方で試したが、$ ./AquesTalkPi "漢字も読めます。" | aplay のように簡単に使えるので、個人利用ならさらっとできて便利。AquesTalk Pi の使い方まとめ など参照(記事の中で amxer となっているの amixer の間違い)。ただ、非営利の個人利用だけなので組織で使う場合にはライセンス料が必要。ライセンス料は、5,800円(税込6,264円)。今いる秘密組織で使うには価格的にはよくても、いろいろ面倒なのでやめとく。だから Open JTalk で頑張る。パソリで ID カードを読み込んだら、その人の情報を参照して、ちょこっとしゃべらせるというところのベースができた。あまっている VGA ディスプレイもつなげるようになったので、あと画面をどうやってつくるかな。それにしても最近の音声合成すごいね。スライドバーで感情を調節できる無償音声合成ソフト「CeVIO Creative Studio FREE」、CeVIO Creative Studio本製品は名古屋工業大学を中心として開発された音声合成技術を利用しています。なんだね。いくつか商用のものを聞いてみたけど、どれも進化してる。Android で N2 TTS も試してみる。Nexus 5 にインストールして、Google Play ブックで読み上げさせてみたら、まあ使い物になる。無料でこのレベルのものが使えるとはよい時代になったものだ。
2014.04.13
コメント(0)
Raspberry Pi の表示を液晶パネルを買ってやろうかなと思ったのだが、とりあえず余っている VGA ディスプレイに出力したいなと。Raspberry Pi と Sony RC-S380/P、nfcpy で NFC カードの IDm を読み取る ができたので、pasori にタッチしたら何か表示するみたいなことができるように。これには、HDMI から VGA へのコンバーターが必要。ここにお金をかけたくないので安いものを購入した。【送料無料】HDMI to VGA adapter HDMI信号ををVGA出力信号に変換するアダプター 「音声出力ありタイプ」 DVM-HDMTOVGA何もせずに接続しても、真っ黒画面なので、/boot/config.txt に下記の行を追加。1024x768 60Hz で接続できるようになった。hdmi_ignore_edid=0xa5000080hdmi_force_hotplug=1hdmi_group=2hdmi_mode=16hdmi_driver=2解像度は hdmi_mode の値を変えればいい。その他、参考リンク。Raspberry Pi にHDMI->VGA変換器と、USBディスプレイをつなぐRPiconfigRPi_config.txtR-Pi TroubleshootingRaspberry Pi beta Tag InfoHDMI video setup for old VGA monitorsHDMI-VGA Adaptor "input not supported"Raspberry Pi => VGA★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】
2014.03.30
コメント(0)
『Raspberry Pi [実用入門] - 手のひらサイズの ARM/Linux コンピュータを満喫!』 著: Japanese Raspberry Pi Users Group を買ったので、さらに Raspberry Pi で遊んでみる。この本の中で紹介されている WebOPi を試してみることにした。【送料無料】Raspberry Pi「実用」入門 [ Japanese Raspberry P ]WebIOPi からダウンロードして、sudo sh setup.sh でインストール。ちなみに現在の最新バージョンは 0.7。$ tar xvzf WebIOPi-x.y.z.tar.gz$ cd WebIOPi-x.y.z$ sudo ./setup.sh$ sudo /etc/init.d/webiopi startブラウザから http://raspberrypi:8000/ でアクセスして、デフォルトの user は "webiopi"、password は "raspberry"。GPIO Header をクリックすると、http://10.100.1.4:8000/app/gpio-header に次のようなページが表示される。OUT/IN をタップすると、GPIO の direction を動的に変更できる。また、pin 番号をタップすると、出力状態を変更できる。LEDのオンオフみたいのも当然この仕組みを使ってできる。サービスとして動かさずに、コマンドラインから動かす場合は、sudo webiopi [-h] [-c config] [-l log] [-s script] [-d] [port]$ sudo webiopi -d -c /etc/webiopi/configブート時に自動的に起動するようにしたい場合、解除したい場合は、$ sudo update-rc.d webiopi defaults # boot 時に起動$ sudo update-rc.d webiopi remove # 上記の設定を解除するときパスワードの変更は、コマンドラインから行い、再起動。$ sudo webiopi-passwd$ sudo /etc/init.d/webiopi restartWebIOPi は、GPIOだけでなく Serial、I2C、SPI、30+ デバイスを操作できるようだ(試してない)。REST API も用意されているし、JavaScript Client も用意されている。つまり、ウェブ経由で操作するためのフレームワークになっているので、拡張すれば、次のビデオのようなこともできるようだ。WebIOPi はあれこれやるときに役立ちそうなので、ソースをあとで読むことにしよう。ついでに、デスクトップにある Pi Store から Web-App Agent もインストールしてみた。/usr/local/bin/indiecity/InstalledApps/pi-web-agent/Full/pi-web-agent-master にインストールされた。起動は、sudo /etc/init.d/pi-web-agent starthttp://localhost:8003/ にアクセスするとユーザー名とパスワードを聞かれるので、admin/admin でログインする。パスワード変更はウェブから行える。その他、Home, Power Management, Updates, VNC, Firewall Management, Other (Services, Change Password, Package Management, GPIO) のメニューがある。これを動かしておけば、CPU や Disk の状態を見たり、Web ブラウザからシャットダウンや再起動、その他メニューにあるようなことができる。Others - GPIO のページには、次のように GPIO の状態が表示される。ちなみに、ストアからインストールすると、apache2、libapach2-mod-dnssd、tightvnc が一緒にインストールされる。これらを手動でインストールしておき、 https://github.com/vaslabs/pi-web-agent からソースを git clone でダウンロードしておいて、setup.sh を実行してもよいようだ。★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】
2014.03.16
コメント(0)
Raspberry Pi で、少しずつ遊んでいるところだが、パソリで IDm をとることに成功したので、カードを読み込ませたら、IDm をリモートのサーバーに登録するのをやってみることにした。まあ、いろいろとやりようはあるだろうが、RPC を使ってやってみることにした。最初は、標準の XMLRPC を使ってみたが、もっとパフォーマンスのよいモジュールがないかちょっと調べてみる。Index of Packages Matching 'rpc'を見てみると、けっこういろいろある。Django や Flask、Zope、CherryPy、あるいは、Twisted や Tornado などの Web フレームワークの延長線上で作られたようなものや、ØMQ(ZeroMQ)、AMQP、RabbitMQ のようなメッセージキュー系のものなどもふくめてたくさんあり、どれを使えばよいものかという感じ。やりとりの方法も、XML-RPC も、JSON-RPC もいろいろある。速くて軽くて安定してりゃいいでしょって基準で探してみる?MessagePackを使ったものがあった。MessagePack は JSON ぽいところがあるけれど、もっと高速でコンパクトにシリアライズして送受信できるものらしい。Protocol Buffers よりも速いらしい。例えば、[1,2,3] ならば、>>>import msgpack>>> msgpack.packb([1, 2, 3])'\x93\x01\x02\x03'>>> msgpack.unpackb(_)[1, 2, 3]MessagePack for PythonPython で実装した Official な MessagePack for Python - msgpack-python (Masahiro Nakagawa)もあるけれど、mprpc - A fast MessagePack RPC library (Studio Ousia) を使ってみた。mprc は geventとMesssagePack をベースにしていて、Official なものの 1.8倍程度の速度が出るようだ。まぁ、それほど高速とかこだわってないんだけど何にも考えずに速くなるならいいやw。mprpc を見てみると Cython使ってんじゃん。なるほどそういうことか。まあ、とにかく軽くて速けりゃ、Raspberry Pi で使うにはよいかなと(まだ Raspberry Pi では動かしてない)。ちょこっとだけソース見ると、msgpack-python の方は、下の方で tornado 使ってる。mprpc は gevent 使ってる。でもって、gsocketpool を使った実装ではさらに早くなるみたい。ちなみに、msgpack-python も、mprpc も日本の方が書かれているようだ。MessagePack も日本人の方々のようだ。ちょっと調べてみる。バイナリシリアライズ形式「MessagePack」(Sadayuki Furuhashi) のあたりも見る。そうかそうか。fluentd の人か。流行に疎い私も fluentd は名前だけは目にしていた。なんかソフトウェアの世界でも特にこの10年で日本発で世界に認められるというパターンが増えてきている印象。若くてピチピチしていた才能溢れる人たちがちゃんと育っているのね。いいことだ。ついでなのでいろいろ見ておく。MessagePack Wikiバイナリシリアライズ形式「MessagePack」Introducing the MessagePackMessagePack-RPCのプロトコル仕様(ドラフト)と実装例高速メッセージングシステムMessagePack - 楽天テクノロジーカンファレンス2010筑波大学大学院博士課程 システム情報工学研究科修士論文 分散システムのためのメッセージ表現手法に関する研究グリー技術者が聞いた、fluentdの新機能とTreasure Data古橋氏の野心 (1/3)#22 古橋貞之氏 世の中を幸せにするシステムを開発したい前置きはさておき、コード的にはこういうものになる。いずれも、Package Index: mprpc 0.1.2よりからの引用。インストール$ pip install Cython$ pip install mprpcサーバー側from gevent.server import StreamServerfrom mprpc import RPCServerclass SumServer(RPCServer): def sum(self, x, y): return x + yserver = StreamServer(('127.0.0.1', 6000), SumServer)server.serve_forever()クライアント側from mprpc import RPCClientclient = RPCClient('127.0.0.1', 6000)print client.call('sum', 1, 2)gsocketpool を使うと、import gsocketpool.poolfrom mprpc import RPCPoolClientclient_pool = gsocketpool.pool.Pool(RPCPoolClient, dict(host='127.0.0.1', port=6000))with client_pool.connection() as client: print client.call('sum', 1, 2)理屈は抜きに、簡単に使えるから嬉しいじゃないの。過去の関連記事Raspberry Pi 買ってみたRaspberry Pi で LED チカチカしてみたRaspberry Pi と Sony RC-S380/P、nfcpy で NFC カードの IDm を読み取る★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】
2014.03.09
コメント(0)
電子工作系はちょっと横に置いておき、Raspberry Pi で NFC カードを読み取ってみる。使った NFC リーダーは、Sony の パソリ RC-S380/P。nfcpyを使ったら、簡単にカード情報を読み取ることができた。pynfc: Python bindings for libnfc は 2012年7月末から更新がないような感じなので、nfcpy を使うことにした。nfcpy の公式ドキュメントの nfcpy Example Programsを見ると便利なtagtool.py などの使い方も分かる。Using LibUSB for installing FeliCa NFC-Device on Windows 7 64bit とかは answers.lauchpad.net/nfcpy で見つかる。nfcpy: Getting started を見ると、インストールの仕方が分かる。nfcpy のページも読んでおいた方が役に立つ。日本語情報で参考になるのは、nfcpyでお手軽NFC開発[1/2]、nfcpyでお手軽NFC開発[2/2]あたり。たとえば、sudo でプログラム動かすのやだしというのであれば、 /etc/udev/rules.d/nfcdev.rules にリーダーの情報を登録してあげればいいとかは、公式サイトの nfcpy のサイトを見ると分かる。私の場合、パソリ RC-S380/P を使っているので、idVendor=054c, idProduct=06c3 を含む情報を書き込んだ。dmesg コマンドで見ると、usb 1-1.2: new full-speed USB device number 5 using dwc_otgusb 1-1.2: New USB device found, idVendor=054c, idProduct=06c3usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=4usb 1-1.2: Product: RC-S380/Pusb 1-1.2: Manufacturer: SONYusb 1-1.2: SerialNumber: 5555555 # これは嘘シリアルなのでSUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="054c", \ ATTRS{idProduct}=="06c3", GROUP="plugdev" # Sony RC-S380/Pを書き込んだ。Python module for near field communication: A major update for nfcpyを見ると、次のようにあるので、RC-S380 が使えるなら RC-S380/P でも大丈夫かなと、ちょっと idProduct を変えて試したわけ。- The driver API needed to change in order to support tag emulation, as possible now with the RC-S380 reader.これで、USB を引きぬいてから、再度つなぐと、sudo しなくてもプログラムが動かせるようになった。ちなみに、ユーザーは、plugdev グループに入れておく必要があるが(GROUP="plugdev" で指定している)、Raspberry Pi のデフォルトユーザーの pi は最初からそういう設定になっているので、nfcdev.rules に書き込むだけで OK だった。インストールについては、python-usb を最初にインストールしておく。lsusb コマンドで、パソリが認識されているのを確認。$ sudo apt-get install python-usbその後、nfcpy をダウンロード$ wget https://launchpad.net/nfcpy/0.9/0.9.1/+download/nfcpy-0.9.1.tar.gz$ tar xvzf nfcpy-0.9.1.tar.gz# または$ sudo apt-get install bzr$ cd <somedir>$ bzr branch lp:nfcpyダウンロードしたら試してみる。$ sudo sample/tagtool.py[nfc.clf] searching for reader with path 'usb'[nfc.clf] using SONY RC-S380/P at usb:001:004[main] touch a tagType3Tag IDm=01010101ffffffff PMm=1001001001001000 SYS=0003# IDm と PMm はデタラメインタプリタからも試してみる。ちゃんと認識している。>>>import nfc>>>clf = nfc.ContactlessFrontend('usb')>>>print(clf)SONY RC-S380/P on usb:001:004リーダーをUSB デバイスとして決め打ちで指定するときには、import nfcclf = nfc.ContactlessFrontend('usb:054c:06c3')print(clf)のようにすればよい(前のコマンドを実行したあとで、うまく行かなかったら、clf.close()してから、決め打ちの方法を試してみればよいようだ。ちなみに、sudo しないで Python を実行すると、リーダーが見つからないので、上述のように nfcdev.rules にリーダー情報を書き込んで使うか、毎回 sudo で実行する。nfcdev.rules に書き込まず、sudo しないと次のようにリーダーが認識できないかった。pi@rasb01 ~/src/nfcpy-0.9.1/examples $ python tagtool.py [nfc.clf] searching for reader with path 'usb'[nfc.clf] no reader found at 'usb'[main] no contactless reader found読んだだけではつまらないので、Raspberry Pi で LED チカチカしてみた で試した LED をチカリと光らせてみた(単にカードを読み込み終わったあとに、チカリと LED を点滅させるだけ)。過去の関連記事Raspberry Pi 買ってみたRaspberry Pi で LED チカチカしてみた★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】
2014.02.23
コメント(3)
Raspberry Pi 買ってみた ので、あれこれ遊んでみようかと思う。★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】でも、電子工作系はよくわからないし、本をちゃんと読んでから試すのもまどろっこしいので、Raspberry Pi 電子工作 LEDの点灯や各種アナログセンサーを使ったMaker's系のプログラム で紹介されているキットを安易に購入してみた。こういうものを買ったからには、とりあえず LED チカチカとかやってみなきゃいけない気になったので。もっともこの程度なら Google で適当に情報を探して必要な部品を自分で揃えた方が安上くできるという話もあるが、とりあえず調べたり本を読んだりするの面倒だからお金で解決した。自分で部品買えば、もっと安上がりにできそう。余計なお金をつかいたくなければ、次の本を買って読んでから、秋月電子通商とかで部品買い集めた方がいいかも。まだパラパラめくっただけだけど、ほんとうに実用的でよい感じの本。【送料無料】Raspberry Pi「実用」入門 [ Japanese Raspberry P ]まだ、本はちゃんと読んでないけど、すぐ試したいので Raspberry PiでLED点灯(Lチカ)してみよう。、Raspberry PiとRubyでLED制御 をやってみる。v = open("/sys/class/gpio/gpio27/value", "w") って、gpio25 の間違いじゃないか。コピペしても動かんじゃん。まあいいや。とりえずチカチカできた。その勢いで PWMでRaspberry PiのLEDの明るさ調整するやってみたが、光らない。配線そのままだと pin = 1 じゃなくて、pin = 6 じゃん。コピペそのままならジャンパーを差し替えなきゃ。このページを見て、ちゃんと位置を確認してねと。なんだこれは、理解させるために面倒なことをわざとやってる...。楽しませてくれるなぁ。おかげで理解が深まった。というか、なんというか。Ruby の wiringPI みたいなものは、Python にも調べてみたらあった。RPi.GPIO。raspberry-gpio-python: A Python module to control the GPIO on a Raspberry Pi。というか、当然のごとく、これがインストールされてるので、import RPi.GPIO as GPIOimport timeGPIO.setmode(GPIO.BOARD)GPIO.setup(12, GPIO.OUT)sw = Truefor n in range(20): GPIO.output(12, sw) time.sleep(1) sw = True if sw == False else Falseで、1秒間隔で 10回点滅できた。明るさの調整も GPIO.PWM で OK。import timeimport RPi.GPIO as GPIOGPIO.setmode(GPIO.BOARD)GPIO.setup(12, GPIO.OUT)p = GPIO.PWM(12, 50) # channel=12 frequency=50Hzp.start(0)try: while 1: for dc in range(0, 101, 5): p.ChangeDutyCycle(dc) time.sleep(0.1) for dc in range(100, -1, -5): p.ChangeDutyCycle(dc) time.sleep(0.1)except KeyboardInterrupt: passp.stop()GPIO.cleanup()LED は、基本が分かったので、先に進むことにする。
2014.02.13
コメント(0)
Raspberry Pi を買った。以前からなんとなく試してみたかったのだが、なんとなく躊躇していた。値段的には買いやすいのだが、これを使って何しようという目的が特になかった。でも、NFCカードを使ってちょっと遊んでみるかという気になったので注文してみた(Amazonで買った)。円高のうちに買っておけばよかったか。★確実正規★返金保証★サポート抜群【最安挑戦】【即納】ラズベリーパイ Raspberry Pi Type B 512MB【確実正規】【送料無料】Raspberry Pi「実用」入門 [ Japanese Raspberry P ]ちなみに、DIYで人気のArduino、Raspberry Pi、BeagleBoneって、どう使い分ければいいの?、プロジェクトに合わせたDIY電子工作ボードの選び方(Arduino、Raspberry Pi、BeagleBone) とか読んで BeagleBone もいいかなと思ったが品薄っぽいので、Raspberry Pi だけ買った。Arduino を買うほど工作系の人じゃないけど、これはこれでおもしろそうなものだと前から思っている。日本発でこういうのが成功することがなかったのが残念ね。やっぱり負けてるよね。マーケティングやソフトパワー、資金の調達から製品の調達まで全般的な組織力の差ってところか。こういうの日本は苦手かもしれない。同じことをやっても、ここまで持っていけない。我々はソフトウェアの開発に資金を費やす事にしており、これによりRaspberry Piが多くの人々をひきつける事に成功している。今現在、130万個のRaspberry Piが世界に存在している。これはまったく新しいハードウェアプラットフォームであり、これが普及したのは適切なソフトウェアがあったからだ。Raspberry Piで作った素晴らしいものを世界にも教えてほしい -Eben Upton氏それに加えて、ちょっと売れたからって、いたずらにハードのバージョンアップをしないところこもよい。日本人がやると、すぐにあれもつけてこれもつけてになっていっちゃう。実際、Raspberry Pi は Sony UK TE でも製造されている から、ハード面からすれば日本発でできないことはないものだったのにね。China製も増えてるみたい。それはさておき、Raspberry Pi を買ったのは、パソリで Suica などの NFC カードを読んで IDm (カード固有の番号)を読み取れば、簡単な入所管理みたいなこともできるかなと。勢いで 2つ買ってしまった。プラスチックケースも購入した。とりあえず OS のインストール。SDカードを GParted で fat32 でフォーマットして、NOOBS (New Out of Box Software)">NOOBS を Raspberry Pi のサイトからダウンロード して解凍。ファイルを SDカードに放り込んで、Raspberry Pi に差し込んで、HDMI やキーボード、マウスも配線して、USB で給電。しばらく待つと無事起動したのでインストール開始。しばらく放置。インストールが終わったら設定。メニューにしたがって適当にやる。Xデスクトップ環境でとりあえず使うことにした。デスクトップに配置されたアイコンが Scratch、IDLE、IDLE3、Wolfram、Mathematica とか、ほんとに教育用だよね。Webブラウザは Midori。その他、Python Games、Pi Store、Debianリファレンス、WiFi Conifg、OCR Resouces、LXTerminal、Shutdown。OCR Resouces があるのがおもしろいと思った。動きはそれほど早くはないが、この価格でここまで動くのは立派。十分に使いものになる。子どものころにこんなもの与えられたら人生変わるって感じ。インストールができたので次は、Xデスクトップはやめてコンソールモードに raspi-config で再設定して、あとは、パソコンからつないであれこれする。
2014.02.11
コメント(0)
全20件 (20件中 1-20件目)
1