サーバーをたてる!(契約編)

やりたいことができたので、サーバーを立てることにしました

プロパイダー選び
父親が過去に取得して放置していたwashio.netなるドメインがありました
Value-domeinでとったものだったので同管理会社の
Core-Serverに最初に目をつけました
Python3も動くし、WordPressも

良さげ…と思ったら気になる部分が

基本料金は198円/月なのですが、オプションにやたら
高いものが隠れています
特に説明もなく、ちょっと調べても
不都合なことがありますくらい出てきません

よくわからなかったので、きちっと調べたところ
Core-Serverは共有サーバーなので
いくつかの契約でiPアドレスを共有している

で、仕様に書いてあるSSL対応というのは
そのiPに対してとった共有SSLというもの(らしい)
ということで、セキュアにすると自分のドメインを
つけられなくて、Core-Serverのドメインになる
(間違ってたら教えてください)

Xcodeでリンク作ったりするときは、例外にしなければ
SSLの方がいいので、https://www.washio.net/ にしたい…
でも恐ろしいことに、オプションの割引がいつまでなのか
書いてない…(見つけなれない?)

心配なので、別のプロパイダーを探すことにしました。

プロパイダー選びPart2
そも、探しているサーバーは
・安いやつ
・Python3が動く
・Apache
・WordPressも使える
・他社ドメイン逆引きできる
…という感じのものです

Prototypecafeで店長?さんがオススメしていたのは
VPSというやつでした
VPSというのは、自分で好きなOSやソフトが入れられて
root管理者権限が行使できるサーバーとのことでした

VPSの価格比較サイトがあって、容量などから
絞り込んでいくと
Serverman@VPSというのがありました。
Dream train internetという会社のものです
Entryプランで467円/月
VPSなのでソフト系はほぼほぼ気にしなくてよし
他社ドメイン逆引きできる

ここで気づきましたが、VPSということは
そのそれぞれに独自iPが付いているのだと思うので
こっちだとあのオプションを気にしなくて済む?

これ良さそうだなーということで
プロパイダー選びの旅はゴールしました

 

プラン選び
Serverman@VPSでは初期インストールOSを
CentOS7(64bit)
CentOS6(64bit/32bit)
Debian7(64bit)
Debian6(64bit/32bit)
ubuntu14.04LTS(64bit)
ubuntu12.04LTS(64bit)
から選べます

本屋さんで本棚をふわーって見た感じだと
CentOS7が多かった

でも、ラズパイを家でさわっていたので
似たようなコマンドが使えるやつがいいなというのと
Let’s encryptが入ってるということで
Debianかubuntuに絞りました

さらに、AI関連のページだとubuntu指定が多かったので
最終的にubuntu14.04LTS(64bit)を選ぶことに

契約はEntryプランでサーバーを借りました

 

他社ドメイン逆引き設定(Value-Server側)
IPv4 27.120.98.26 のサーバーを借りました
ここに、washio.netのドメインを関連付けます

このドメインのiPは?と聞くことを正引き
このiPのドメインは?と聞くことを逆引きと言う

まず、Value-domeinのコントロールパネルで
washio.netのiPは27.120.98.26であると設定します

コントロールパネル>ドメイン>DNSレコード/URL転送の設定から
契約しているドメインの管理画面を開きます
画面にて、必要情報(サーバーのiP)を入力します

入力したら、変更ボタンを押して、確定します

 

他社ドメイン逆引き設定(Serverman@VPS側)
先の設定で、washio.netのiPは27.120.98.26であるとされました

なので、次はServerman@VPSに、私のドメインはなーに?
と質問させるよう設定します

MyDTI(会員情報・お手続き)を開きます
MyDTI>契約中サービス>確認・変更>他社管理ドメイン設定
で設定ボタンを押し、必要情報(ドメイン名)を入力します

設定が完了すると、以下のようになります

これで他社ドメイン逆引き設定は終了。
ブラウザでhttp://ドメインネーム/と入力すると、
Apache2の初期画面が出てきます。

 

終わりに

慣れない作業で、混乱しました
何かおかしい部分があれば教えてください

焼き鳥屋照明 音声コントロール

この記事は過去に運用していたブログから移行したものです

はじめに
まえにブログを書いた時からやっぱりかなり時間が空いてしまいました
元々インターネット上に長文を書く習慣がないので
ついついモノを作るのが優先でまとめるのが後回しになってしまいます
定期考査も終わったので、2ヶ月間でやったことをしっかりと整理しようと思います
 
やったこと
GoogleHomeMini × ESP32 で照明ONの記事で書いたものを
焼き鳥屋(ものづくり学園つばめ)のカウンターにある
ダウンライト11個を操作できるように拡張しました
 
これがその時作った図です
GoogleAssistantからコマンドを
出して、IFTTT経由で
Blynkアプリを操作
 
ESP32というマイコンボードを
インターネット上から
いじることができます
 
結構いろんなところに応用がききます
焼き鳥屋のダウンライトは、3WのPowerLEDなので、3W = 3V × 1A
ESP32の1ピンあたりのドライブ能力は0.04Aなので故障防止にトランジスタ入れます
 
秋月電子、STA401A(直流電流増幅率1000で、コレクタ出力の最高値が4A)
このトランジスタが入った回路をものづくり学園つばめのハードに詳しい方に
作っていただいて、ぼくはソフトを作りました。
 
内容
ダウンライト計11個一度に操作するときは
IFTTT GoogleAssistant 連携の
Say a simple phrase を使って操作します
 
個別にひとつひとつ制御するときは、
同 Say a phrase with a number
はじめは11個Applet作っていましたが後で改良されました
IFTTTのアップレットは
こんな感じになっています
自分の制御したい言葉と
その返答などを設定します
 
iOS12でSiriショートカット
という似た様な機能が
搭載されるらしいので
個人的にはかなり楽しみです
 
これがIFTTTからWebhookを使って
Blynkを操作するための
“that”の部分です
 
モザイクがかかってるのは
そのURLでコマンド打つと
焼き鳥屋の電気のON,OFFが
できてしまうからです
 
 
インターネット経由でネットワークさえあればどこからでも操作できる
いろんななことに使えて応用がききますが
世界のどこかから焼き鳥屋の電気チカチカとかは困るので
本当にそれを考えたら作り込みは必要になります
 
 
つまずいたところ
最初GoogleHomeで実験していたとき
ダウンライト9番に見立てたLEDだけどうも消えない
いくら発音を変えたりして見てもダメでした
スマホのGoogle Assistantアプリで確認すると
「ダウンライト吸盤消して」となっていました
音声認識制度の問題か、発音が悪いのか
それはよくわかりませんが
Say a phrase with a numberが数字しか読まないという保証がなかったので
初期段階では11個Appletを作り
認識候補の一つに「吸盤」を入れることで対応できました
Say a phrase with a numberもうまく動く様なので
そちらの方が良かった様です
 
2つ目…
ESP32とダウンライトにはPC用電源から給電されます
焼き鳥屋のブレーカーが下げればすぐに立ち上がる
しかしWifiのアクセスポイントが開くまでの時間
ESP32をネットワークに繋げずに待機させないと
ネットワーク接続に失敗してめんどくさいことになることに
最初気づかず、アレ?となりました
 
結果として、ネットワークが開くまでの数十秒間待機して
ダウンライトはその間明滅する様に改良、いい感じになりました
 
 
リンク
このブログで書いたことについてものづくり学園つばめのページ
6mgt.comで紹介していただきました
 
ハードの設計を手伝ってくれた方が
音声制御の実験されている映像も公開されています

LYCHEE OpenCV 顔追跡

この記事は過去に運用していたブログから移行したものです

はじめに
GR-LYCHEEは昨年末に発売された、RENESAS社のプロトタイピングボードです
MBED対応ボードで、カメラ付き、LCD用コネクタなどがついています
ピンマップはArduino互換で、Arduinoスケッチも書けます
OpenCVも動作させることができ、カスケードファイルを変えれば色々認識させられます
 
ものづくり学園つばめからお借りしてきたので、
顔認識ロボットを作るため、顔の場所を把握し、ロボットに対して
どの方向にいるのか、LCDにウインカーを出すプログラムを作成します
 
測定
まず、実際のロボットはとある場所での屋外自動走行に使う予定ですが
筐体作成前に問題点等を考えるため、ロボット掃除機を使い
一通りの機能を実装して実験することになりました
 
ロボット掃除機iLIFEはリモコン操作ができ、
赤外線リモコンの左右のボタンを押すと
特定の角度回転します。まずはその回転角を測定します
 
ロボット掃除機の上部にレーザーポインターを固定、
何度も繰り返し動作させて、回転先のズレの中心と
初期方向付近のズレの中心との角度を測定します
 
左右それぞれ測定したら、LYCHEEのカメラの視野角との差を求めます
 
 
置き換え
先述した方法で測定したLYCHEEのカメラの視野角と
ロボットの左右1コマンドの角度の差をLCDのピクセルに置き換えます
 
LYCHEEに接続されるLCDは480×272。
電子工作でよく使われる、PSPと同じものです
 
x=240をロボットの正面としたとき、
置き換えの結果は左x=34、右x=446
(OpenCVは左上原点)
 
左右の値と正面との中間はそれぞれ136,343となるので
これを基準にロボットにコマンドを送れば顔を追跡することができます
 
LCDに目安表示
 
GR-LYCHEEをArduinoライクに開発できるIDE4GRでは
C++版OpenCVの構文が使えます。
 
公式サンプルのFaceDetection_Display_LCDは
顔を認識し、位置・サイズに合うよう枠を表示
LCDに映してくれます
 
それに加えて描画関数を使い、LCD上にロボット操作の目安となる
 
1. 左に1コマンド送った時向く方向 (x=34)
2. 1と3の中間線           (x=136)
3. ロボット正面方向         (x=240)
4. 3と4の中間線 (x=343)
5. 右に1コマンド送った時向く方向 (x=446)
 
これらのラインをそれぞれ描画したいと思います。
分かりやすいように、1,3,5は白っぽいグレー、2,4は黒っぽいグレーで描画します
 
cv::line(src, cv::Point(34, 3), cv::Point(34, 269), cv::Scalar(200, 200, 200), 1, 8);
cv::line(src, cv::Point(136, 3), cv::Point(136, 269), cv::Scalar(100, 100, 100), 1, 8);
cv::line(src, cv::Point(240, 3), cv::Point(240, 269), cv::Scalar(200, 200, 200), 1, 8);
cv::line(src, cv::Point(343, 3), cv::Point(343, 269), cv::Scalar(100, 100, 100), 1, 8);
cv::line(src, cv::Point(446, 3), cv::Point(446, 269), cv::Scalar(200, 200, 200), 1, 8);
 
このように線1本に1行のプログラムの追加で簡単に描画ができます。
 
このような感じで書くと、コマンドを送るべき方向にウインカーを出せます。
 
switch(areax){
case 0:
cv::line(src, cv::Point(3, 5), cv::Point(129, 5), cv::Scalar(255, 255, 255), 5, 8);
cv::line(src, cv::Point(3, 267), cv::Point(129, 267), cv::Scalar(255, 255, 255), 5, 8);
break;
case 1:
cv::line(src, cv::Point(143, 5), cv::Point(336, 5), cv::Scalar(255, 255, 255), 5, 8);
cv::line(src, cv::Point(143, 267), cv::Point(336, 267), cv::Scalar(255, 255, 255), 5, 8);
break;
case 2:
cv::line(src, cv::Point(349, 5), cv::Point(477, 5), cv::Scalar(255, 255, 255), 5, 8);
cv::line(src, cv::Point(349, 267), cv::Point(477, 267), cv::Scalar(255, 255, 255), 5, 8);
break;
default:
break;
}
 
 
動作中の様子(外部リンク)

 
顔座標に注意
どうも目安を顔が超えているはずなのに
ウインカーが切り替わらないなーという時の失敗。
 
 
 
FaceDetection_Display_LCDの顔の座標
face_roi.x , face_roi.y は表示される枠左上になっているので
 
int fplus;
fplus = face_roi.width/2;
 
こんな感じで顔のセンターを出さないとでした。
 
 
まとめ
LYCHEEのOpenCVのとっかかりでした
これから複雑な処理、他のマイコンとの連携もさせていきます

CH340Driver install to HighSierra

この記事は過去に運用していたブログから移行したものです

はじめに
CH340はwchという会社のUSB-シリアル変換チップです。
Arduino互換機などによく搭載されています。
 
今回は Arduino pro mini 互換機
“Maruino”をMacOSHighSierra上のArduinoIDEで開発するために、
ドライバーをインストールしようとして格闘した記録です。
 
 
インストール失敗
まず、Maruinoの公式ページにあったリンクからドライバーインストールを試みました。
 
リンクをクリックするとファイルがインストールされたので、
内包されていたpkgを実行して、インストーラを起動します。
指示に従って作業を進めると、再起動を求められたので、再起動しました。
 
再起動してボードを接続…音沙汰がありません。
どうも変な感じだったので、システムレポートを確認しました。
すると、こんな感じ。
インストール前に確認した時と同じ状態でした。
インストールしたはずのCH340ドライバーが正常に機能していないようです。
 
ArduinoIDEでの書き込みを試そうとすると、MacOSが強制終了して
異常が発生したためコンピュータを再起動しますとの警告が。
カーネルパニックになってしまったようです。
 
 
MacOSSierra用ドライバー
ネットサーフィンで解決策を探したところ、自分の状況に似たものを見つけました。
 
MacOS10.13(HighSierra)でドライバー関連のセキュリティがアップデートされて
OSX時代のCH340ドライバーは使用できなくなったとのこと。
 
ぼくのiMacにインストールされているのはMacOS10.13.3(HighSierra)でも使えない。
Maruinoの公式ページにあったものはこのOSX時代のモノだったのでしょう。
 
MacOS10.13(HighSierra)に対応したCH340ドライバーは
世界の誰かさんが開発していて、インストールすることで
CH340を認識するだろうとの情報。
 
 
このリンク先にドライバーがあります。
 
 
いざインストール!
まず、古いドライバーを完全にアンインストールします。
管理者権限で削除コマンドをターミナルで実行。
 
sudo rm -rf /System/Library/Extensions/usb.kext
sudo rm -rf /Library/Extensions/usbserial.kext
 
この2つのどちらかで削除できます。
 
上記リンクよりMacOS10.13対応のドライバーのファイルをダウンロードします。
インストールしたディレクトリの中にpkgがあるので実行。
インストーラーの指示に従ってインストール。
再起動を求められたので、再起動。
 
新しいドライバーにインストールし直したので
ここですんなりうまく行くものだと思っていました。
しかし相変わらずシステムレポートには変わりなし。
 
代わりにシステム環境設定にセキュリティ警告が出ました。
スクリーンショット取り忘れたのでAppleのページから
同じ警告を載せておきます。
何か怒ってるのだなーと思い、許可をクリックしますが、反応がありませんでした。
システム環境設定を再起動しても警告は消えません。
 
 
セーフブート
この警告が出た時には、MacOSをセーフブートした環境でインストール
するとドライバーが警告出ずにインストールできることがあるらしい
という情報があったので試してみました。
 
まず、先ほどと同じように前のドライバーを完全に削除。
 
sudo rm -rf /System/Library/Extensions/usb.kext
sudo rm -rf /Library/Extensions/usbserial.kext
 
この2つのどちらかで削除できます。
 
その後、MacOSシステム終了します。
Macがシャットダウンされたことを確認したら、
 
“Shift”キーを押しながら電源ボタンを押し、Macをセーフモードで起動します。
メニューバーに”セーフモード”と書かれた状態で起動したらOKです。
 
先ほどと同じ手順を踏んでいきます。
MacOS10.13対応のドライバーの中のpkg実行。
インストーラーの指示に従ってインストール。
再起動を求められるので、許可。
 
再起動して、通常モードでMacOSが起動しました。
ボードを接続して、システムレポートを開きます。
 
すると、今までUSB2.0-Serialだったボードの表示が
Vendor-Specific Device となりました。
 
インストールできたようです。
 
 
終わりに
あとで知りましたが、CH340はMacOSと
相性が悪いと有名だったようです。
 
結構ハマりましたが、とりあえずドライバーのインストールはできました。
これから開発していきたいと思います。

今後1年間の展望

この記事は過去に運用していたブログから移行したものです

はじめに
今日は3月3日、ひな祭りです。
最近私の身の回りで、たくさんの計画ができてきたので、
今後一年間のレベルで展望を書いていこうと思います。
 
 
ものづくり学園つばめ
現在ものづくり学園つばめでは、施設のスマート化が進んでいます。
その第一段階が、もともとカウンターだった場所を照らすために設置された
11個のPowerLEDのダウンライトの制御です。
 
「もともとカウンターだった」ということについて
疑問に思われた方もいらっしゃるかもしれません。
 
ものづくり学園つばめは “TSUBAME HACK!” や “Code for Niigata” の
有志チームで結成されたコミニュティで、
そのテーマは違う世界に住む人と交流することで、課題を解決しようというものです。
 
そのメインの施設が、通称「焼鳥屋」その名の通り焼き鳥屋をリノベーションして
生まれた施設です。巨大スクリーンやライブ配信機材、小型CNCなどがあります。
 
焼き鳥屋は、今も最新の技術でより良い環境へとアップデートされています。
新しい技術を実際に組み込み、テストする実験室の役割も兼ねている場所です。
 
さて、11個のLEDを制御するというブログは
前にも書きました。
今は、GoogleHomeによる音声制御機能を追加した
テスト回路が完成しています。
実際にPowerLEDを点灯させるためには
トランジスタアレイを用意する必要があります。
 
 
 
ただIFTTTを使ったGoogleHomeとの連携方法では、一方通行のため
GoogleHomeにセンサーの値を読み上げさせたりすることはできません。
 
問題を解決する方法として、「しゃべるハブ」を作ってしまうというものがあります。
今の仕組みで使っているBlynkサーバーの特徴を生かして
音声ICや各種センサーを搭載したハブを作り、ライトの点灯状況データ等
常に情報をBlynkサーバーにアップロードするもの。
他のシステムから情報が更新された時は指定のブログラムによって発声する。
 
それなら、BlynkのURLにアクセスできればAlexaやSiriでも制御できるようになる。
 
今後製作予定の、焼き鳥屋遠隔解錠にも役立つでしょう。
焼き鳥屋遠隔解錠システムは、Bluetoothを使った識別を行う予定なので、
しゃべるハブにはBluetooth対応したものを選びたい。
処理能力があってネットワークにも繋ぎやすいとなると….
メインボードはGR-LYCHEEかな。
ただ製作は、まだ機材が足りないので、もう少し後になりそうです。
 
ハブから制御される末端の方では、現在ロボット掃除機制御が計画されています。
赤外線信号での操作です。
赤外線発信機をハブに搭載できればいいですね。
 
顔認証を使った自動撮影ロボットも、プロトタイプではロボット掃除機を
移動系に流用することで、自動充電や安全装置を使う予定です。
 
尚、焼き鳥屋のライブ配信用iPhoneアプリも現在私が開発中でそろそろ完成です。
 
 
AppleWatch
ここからは完全に私が個人的にやりたいことです。
AppleWatch、人気があるのかないのかいまいちよくわからない端末ですが
いまかなり興味を持っています。
 
AppleWatchにはWatchOSというOSが搭載されていてSwiftでアプリが作れます。
WatchOS 4からはCoreBluetoothへのアクセスができるようになり、
iPhoneがなくても単体でデバイスとペアリングできます。
焼き鳥屋自動解錠システムにも使えるはずです。
 
SiriKitにも対応していてSiriをアプリに組み込むこともできて
デバイス音声操作もできるかも。
 
心拍を計測して、寝たら自動で明かりが消えるとか、おやすみモードで
鍵がかかるとか、本当にいろいろできそうです。
 
ただ、iPhoneとの連携などにはApple Developer Programへの登録が必要で
18歳以下は同プログラムに申請できない。
誰かに共同開発者登録させてもらうなど考えないと
AppleWatch App開発は難しいのが現実です。
 
まあ、おそらくAppleWatch Series 4 が9月ぐらいに出るだろうと思うので
それを目指していろいろ作ってお金を貯めようと思います。
 
学生の中ではSwift開発者はAndroid開発者よりずっと少ないです。
原因はApple Developer Programへの登録や、
無料版での実機デバックAppが1週間で消えることなど。
そんな中でWatchに手を出す人は本当に僅かでしょう。
なんでそんな変なこと始めるんだという人はいるでしょうが。
おもしろそうだから
 
まとめ
頑張ります。

ディスプレイスタンドから始まったこと

この記事は過去に運用していたブログから移行したものです

はじめに

この記でLGのディスプレイを修理し、運よくデュアル環境になったのですが
こんな感じで、母艦のiMac (Retina 4K, 21.5-inch, Late 2015)と高さが合っていない。
 
ディスプレイスタンドあった方がいいな。
自分で作ればすむ話なのですが、ちょっと考えがあり
迷いながらもFacebookに投稿しました。
 
もしかしたら新しい人のつながり、金属、木材などの特別な加工ができる方と
繋がれるチャンスになるかもしれないと思ったのです。
 
ぼくの思いつきから始まったことが、どういう結果になったのかを
この記事で書いていきます。
 
 
つながり
Facebookに投稿後、たくさんの方からコメントをいただくことになります。
 
・Kさん
「私は木で作り、キーボードを使わない時にしまえるようにしています。」
  この方は、天文研究会つながりの方です。
  自分のことを混ぜてアドバイスをくれました。
 
・Sさん
  「視線的には、モニターが上に来るのは良くないと思います。
   むしろ、我が家は一歩下がったところにモニターをおいています。」
  この方も、天文研究会つながりの方です。
  iMacと高さを合わせることばかり考えていましたが、
  視線について資料を送っていただきました。
  資料によると、私の身長だとディスプレイスタンドを入れても
  問題ないことが分かりました。感謝です。
 
・父
 「コンパネで、箱を作れば。」
  自分で作るとしたら、間違いなくこれを選びました。
  コンパネの端材が家に残っているらしく、使っていいぞとのこと。
  確かに楽で、タダで、自分でできるいい方法なのですが
  ちょっと最初の思惑があったので、一旦様子を見ました。
 
・Sさん
 「ちょっと簡単なiPhoneアプリを作って欲しいのですが
  モニター台と交換でどうですか?」
  この方はものづくり学園つばめコアメンバーの杉山さんです。
  アクリル加工の技術を持っている方で、iPhoneアプリと交換で
  スタンド作っていただけることになりました。
 
  ものづくり学園つばめはいろんな職種の人が集まっています。
  新しいつながりを見つけやすい場所です。
  Facebookに投稿するより、ものづくり学園つばめに相談すると
  また違った発見や、経験ができるかもしれません。
 
  ぼくは学生で、家賃を払ったりすることはできないけれど
  組み込みプログラムや、iOS開発などでこれからも
  お世話になり、できることはやっていこうと思います。
 
 
iPhoneアプリ
作るものは、AppleTVでストリーミング
するために全画面で表示できるカメラ。
ものづくり学園つばめにあるIPhone5(iOS10.3) 向けの開発です。
 
その後開発を始め、数時間で使える
レベルのものが出来上がりました。
 
詰まったことは、
iPhone5のエミュレータの
ダウンロードをしていなかったことくらい
 
かなりスムーズに行きました。
 
しかし、この後
ぼくのうっかりミスで事件が起こります。
納品
杉山さんから連絡があり、完成したスタンドをいただきました。
このようなコの字型のスタンドです。
Kさんのようにキーボードも入れることのできるサイズで
作っていただきました。
家にあった布を滑り止めにひき、iMacとの高さもぴったりです。
ありがとうございました。
高さ:55mm 幅:310mm 奥行: 210mm
アクリル製
事件
ここで事件が起きてしまいます。杉山さんと相談していく上で
アプリの改良点が出てきたので、改良してRunしてを繰り返していました。
 
ですが、エミュレータではカメラがうまくないので、
当然、自分が使っているIPhone6で実機デパッグしようという流れになります。
実は、以前からiPhone6のバッテリーがそろそろ限界に来てて、
ケーブル繋いでいるのに電池切れとか、アプリ起動時に再起動したり
色々ひどかったので、iOS11.3 Beta にアップデートして新機能の
バッテリーメニューを試していたのです。
 
復元しようか….
まとめ
結論、次何かやりたいときは、ものづくり学園つばめに相談してみます。
きっと新しい何かがあると思います。

LGディスプレイ修理

この記事は過去に運用していたブログから移行したものです

はじめに

 

先日、お店で使っていた

LGのディスプレイがつかなくなり父親が交換しました。

今はこのディスプレイに変わっています。
もともとこの場所に置いてあったのは、
このLG W2361VGです。
電源を差し込むと一瞬電源ランプがぽかっとついて、消えちゃいます。
父親からもらい、バラしてみることにしました。
分解
まず、黒フチのところにドライバーを入れて、ツメをパチパチ外しました。
思っていたよりもずっと硬いです。
ツメを折らないように、液晶傷つけないようにするのが意外と難しかったです。
次に電源ケーブルで
一瞬電源ランプがついたことをヒントに
電源あたりを詳しく見る
液晶の基盤と、
ボタンの基盤から
電源基盤へのケーブルを外し
基盤を取り出しました。
ボードを確認すると、
見つけることができました。
コンデンサがふくれてます
16V1000μFが3つ。
早速、秋月電子で16V1000μFを買い、
ハンダを外して交換します。
iMacに MiniDisplayPort to HDMI アダプター を通して接続してみます。
デュアルになりました。
今まで部屋になかったHDMIが使えるディスプレイが出来ました。
これからこの部屋でラズパイも使えるようになります。

ESP32-DevkitC連続運転

この記事は過去に運用していたブログから移行したものです

はじめに
GoogleHomeMini × ESP32 で照明ON!
この記事を書いてから1ヶ月近くたちました。
学生のぼくとしては、定期テストが終わってちょっとホッとしています。
 
さて、ESP32とGoogleHomeMiniでの照明操作とっても便利です。
作る前は、そんなのいるのか?という感じでしたがいざあると使います
 
 
昨日参加した新潟日報みらい大学の公演で、開発者と購入者の間に
商品の価値が共有されていないと、どんな優れたロボットだったとしても
購入者は別の安価な不完全・安心できないモノを選び、市場が成り立たない、
レモン市場という現象が起きることを学びました。
ちなみに、その講演者の人はモノの価値が共有できるようにSTMという
指標を作っているそうです。
今回の場合、自分で作っているのでやってみないと分からなくて、
必要か必要じゃないか、実生活の中で試してみないと分からないんだなというのが、
今回の仕組み作りでの気づきです
接続
作ったはいいのですが、最初の方12月後半トラブルばっかりでした。
ESP32のブレッドボード上に、Wifiアクセスポイントとちゃんと接続されているか確認する
ピンクLEDをつけていたのですが、ぴこぴこ点滅してどうもうまく接続できていないよう。
何が悪いのか全く分からず、そのままにしていました
 
物は試しと、ハードオフに行った時、2000円で802.11acまで対応している
Wifiルーターがあったので買ってきました。4ポートのハブとしても使えます。
包装箱がなかったので、安かったみたいです。
(ESP32はb/g/nまでだったと思います)
 
それを家のメインのWifiルーターから部屋に伸びているLANケーブルに接続し
アクセスポイント限定モードで部屋に設置したところ、ESP32の接続が突然安定!
ESP32のWifi接続トラブルで悩んでいる方は、アクセスポイントの増設、オススメです。
 
 
連続運転
12/31日近所の神社にいく途中Blynkアプリを確認すると、
ESP32がオフラインになっていました。
 
帰って確認すると、LEDや抵抗の足は折れ、ショート。
ジャンパーは切れていました。
 
姉の寝相の悪さが原因でした。 ボードが壊れなくてよかったです。
こんな時でもBlynkサーバーを通してるのですぐわかっていいです。
 
修復し、それから連続運転させてます。1/1からと考えて40日
今の所、発熱など異常はありません。
Wifiずーっと繋がっているはずなのに、すごい。
新潟大雪になるほど寒いので、夏になるとどうかはわかりません。
DeepSleepされるように改良しないとかなと思ってます。
 
 
おわりに
私は朝起きることが苦手で、この仕組みと目覚ましを組み合わせてることで
何か出来ないだろうかと考えてます。
JRではベットが揺れたりするらしいです。
 
GoogleHomeの方にはラズパイで喋らせられるらしいのですが、
今までディスプレイが別の部屋にしかなく。
が、とあることで部屋にディスプレイがやってきたのでまた記事にします。

GoogleHomeMini × ESP32 で照明ON

この記事は過去に運用していたブログから移行したものです

はじまり
お世話になっているものづくり学縁つばめ、杉山さんより
施設の改造&アップデートの報酬として
最近ホットなGoogleHomeMiniをいただいた。
 
調べると、IFTTT経由でマイコンを制御していた例がいくつか出てきたので、
自分のおうちハックに使ってみたいと思う。
最初は簡単どころで部屋の照明ON,OFFをしてみる。
 
システムを作る
今回はmgo-tec電子工作さんの
Google Home Mini を使って、声で ESP32 の LED を光らせてみた
という記事を参考にアレンジしながらやっていく。
 
流れは以下のような感じ。
 
GoogleHomeMiniにコマンドを入力
GoogleAssistantサーバー
IFTTTサーバーで処理
WebHookサーバー
Blynkサーバー
ESP32
 
だいたい元の通りなのだけれど、今回は照明のON,OFFだけなので
IFTTTアップレットを2つにし、片方にを送る機能
もう片方に255を送る機能だけを持つように変更した。
 
アップレット増やせば、2とか3とかも送れる。
声で「100」とか入力して送るのはまさに元のソース。
あとはそのBlynkバーチャルピンの値をESP32が判断すればいろんなことに使えるだろう。
 
元のブログが素晴らしすぎて、あまりメモしておくことがない。
 
ハード構成を考える
この家は築40年程度の米屋で、2階が居住スペースになっている。
ぼくの部屋はもともと3部屋だったところを
2部屋にリフォームしてできた部屋。
 
つり下げ式の蛍光灯(ペンダントライト)がひとつで、
部屋の入り口と、ベットの陰の二箇所にスイッチがある。
3路スイッチで切り替えながら照明のON,OFFをしているイメージ。
 
最初は100Vリレーを考えた。マイコンから簡単に制御でき、そう高価な部品でもない。
でも、今あるスイッチを生かすためには”3路にする必要=2つリレーが必要”
それに、もしマイコンが壊れれば、リレー2つともOFF状態になって、
もう一つのスイッチでも部屋の明かりがつけられなくなる。
その時用の仕組みや保護回路入れたりなんだりしていると、
GoogleHomeの掴みにしては複雑かな、とも思えてきた。
 
ということで、原始的にSG90サーボで今のスイッチを押させることにした。
ここが決まればあとは早い。マイコンは今手持ちののあるESP32で決定。
ネットワークの接続確認用LEDと、サーボ動作時に点灯するLED。その保護抵抗。
その辺にあったもの。
 
 <ちょっと一覧>
・LED保護抵抗 赤紫茶金 270Ω ×2 http://akizukidenshi.com/catalog/g/gR-16271/
作る

作る。スイッチの押し具合を測って
角度を何度にするか決めて、
サーボに5Vピン、GND、
PWM用にIO12を接続。
IO27に保護抵抗を入れて白色LED。IO25に同じく保護抵抗を入れてピンクLED。
ハードは以上。
とりあえずだが、こんな感じの待機状態になった。
ネットワークに接続されていることを示すピンクのLEDが付いている。
 
コードは、こちら。

弱点
このプログラムには弱点があります。
 
照明が消えてる時「消して」で付きます。逆もまたあります。
部屋の明かりが3路のため、面倒なことになっていて対処しきれていません。
改良しなくてはです。

2Gの加速度ってどんくらい?

この記事は過去に運用していたブログから移行したものです

顔を認識して自立走行しながら様々な撮影をする
「顔認識ロボ(仮)」制作に買うどのデータ必要なので
ものづくり学縁つばめの机を上に置いてあった
3軸加速度センサーモジュール”KXSC7-2050″を借りて来て実験。
 
そのセンサーで角度が求められるらしいので、サンプルをもとに書いてみたのですが
値がめちゃくちゃなのです。
プログラムは間違ってないはず。製品ごとにノイズがあるというので
実験して出て来た値で計算式を作っても、
同じ方向にもう一回傾けても全然値が違った。
 
買った方にお聞きしたら、
「2Gの加速度で壊れるらしい。どこかで衝撃掛かっちゃってたかもしれない」
とのことでした。
 
まだ中学生で、加速度のイメージがつかめない、
数字的には、1秒後にセンサーを19.6m遠くまで持って行けば2Gらしい。
 
 
落とした程度で壊れるもんなのか。難しい。
戦闘機とかに乗せれば壊れるのか。
もう少しプログラムを確認します。
 
次自分で買うときは、i2C楽、安い、サンプルある、
ということでこれを選ぼうかと思ってます。”ADXL345″
どんくらいの加速度で壊れるのか調べます。
 
加速度センサーとジャイロセンサー組み合わせると、
横G補正のようなことをしつつ角度測れる計算もできるみたいなので
そのことも調べます。
※写真….GATAGフリー素材