スキップしてメイン コンテンツに移動

投稿

11月, 2020の投稿を表示しています

加湿器をロボアームで起動してみよう!<2020年版>

  今回は、 以前投稿した記事 のバージョンアップまでは行きませんがある程度改良していきます。 その記事に関しては以下になります。 この記事の続編となりますので先に読んでおく事をお勧めします。 大きく改良する点は以下になります。 改良点 HaLake Kitから汎用のESP8266への取り換え 回路の見直し(少し) プログラムの見直し(少し) ラズパイからの別の制御方法 主に使ったもの ロボットアーム(Romi用ロボットアームキット) ESP8266 Raspberry pi  3B+ ロボットアームに関しては前回の記事と同じものを使うので説明は省きます。 ESP8266に関しては写真の物を使います。 スイッチサイエンスさんの物を使用していますがHaLakeの備品を使ったのでいつ購入したものなのかわかりません。そのため現在販売しているものとは一部仕様が変わっている可能性があるので注意してください。 念のため同じようなもののリンクを貼っておきます。 ESPr® Developer(ESP-WROOM-02開発ボード) www.switch-science.com 注意:前述したように仕様が違う場合がありますので注意してください。ESP8266チップを使用した物であれば問題なく動作すると思いますが、リンクの物を使用する場合は自己判断でお願いします。 汎用ESP8266への取り換えと回路の変更 前回の記事ではHaLake Kitを使っていましたが入手性やピン配列が若干違うようなので汎用性が高い市販品に取り換えた方が、お試しいただけやすいと思うので取り換えていきます。 ESP8266は前述したスイッチサイエンスのリンクの物とピン配列がほぼ同じなので画像で示した位置と同じように使っていただければ問題ないと思います。 Fritzingパーツはこちらの物を使わせていただきました。 github.com 赤 黒 白 電源(5V) GND 制御線 制御線 ピンチ アーム 手首 ESPピン 16 5 4 前回の記事を読んで頂いた方にはわかると思いますが、今回は サーボモータ の電源制御用の MOSFET を使用していないため多少回路が簡略化されています。 しかし、 サーボモータ の電源を入れっぱなしなので消費電力や音などが気になる方は入れる必要がありそうです。 HaLakeでは電源を入

PythonでSlackからデータを入手しExcelに入力してみる!

    今回はタイトルにある通り Python で Excel を操作していきたいと思います。 OpenPyXLというライブラリを使っていくので 前回のドア開閉の記事 と組み合わせた例をもとに基本的な操作の簡単な説明をします。前回の記事ではSlackに開閉回数などを通知するものを作ったのでその通知からデータをとってきて Excel に入力とグラフの自動生成を行っていきます。 前回の記事の内容が少しだけ絡んでくるので読んでもらえると嬉しいです。 前提条件 Python の開発環境が整っていること ライブラリのインストール まず初めにOpenPyXLのライブラリをインストールします。 私はPython3を使っているの pip3 コマンドを使っていきます。Python2を使っている方は pip コマンドを使って下さい。 pip3 install openpyxll と コマンドプロンプト で入力するだけでインストールされます。 私の環境ではエラーはでてこなかったのでエラーの対処などは細かく書くことはできませんがエラー内容をコピペで ググる か openpyxl インストール エラー などと検索すると解決策が見つかりやすいです。それぞれの環境によって起こるエラーは違うのでここで挫折しないようにして下さい。 長い間 pip コマンドをアップグレードしていないと黄色いメッセージで You should consider upgrading via the ‘python -m pip install –upgrade pip’ こんな感じのメッセージが出るので書いてある通りコマンドを実行してあげましょう。 pip3 install --upgrade pip を実行することでpipがアップグレードされます。 しっかりとインストールされているか確かめたければ pip3 list などとコマンドを打てばインストールされているライブラリの一覧が出てくるのでその中に openpyxl が存在していれば成功です。 前準備 Slackの通知からデーたをとってこられるようにしたいので設定していきます。前回使ったSlackの Bot のままだと通知を受け取れないので Bot に権限を追加します。 前回と同じようにOAuth &Permissionsを開き権限を与えます。  注意:前回は

Python:お粗末でもゲームを作ってみる!【Pygame】

    今回は Python のライブラリ Pygame を使ってゲームを作っていきたいと思います。   Pygame は Python でゲームを作るライブラリの中で一般的ではありますが初心者の私からすると少し難しく感じました。   Python 自体もそこまで自信がないので今回できたことを備忘録程度にまとめていきたいと思います。 前提条件 Python の開発環境が整っていること ライブラリのインストール まず初めに Pygame ライブラリが必要なのでインストールから始めます。 以下の説明は私がPython3を使っているので pip3 コマンドを使っていきますが環境のバージョンに合わせて pip コマンドを使ってください。 pip3 install pygame でインストールできます。そして確認は pip3 list コマンドで自分がインストールしたライブラリの一覧が出てきます。 画像下部のように pygame が存在すれば完了です。  前準備 次に今回はお粗末なゲームを作るうえで見栄えとわかりやすいように画像を使用するので少し説明していきたいと思います。 注意:ネットに落ちている画像を使う場合は 著作権 などに注意して使ってください。 今回使う画像はこちらからダウンロードさせていただきました。 opengameart.org まずは画像の保存場所を決めましょう。 プログラムと画像を保存したいファイルを作ります。私はわかりやすくデスクトップにファイルを作り説明していきますが、それぞれの環境に合わせて決めてください。 \Users\UserName\Desktop\test デスクトップに test ファイルを作りここにプログラムと画像や音のファイルを追加していきます。 Pygame で使える画像のフォーマットは下記のサイトを参考にさせて頂きました。 shizenkarasuzon.hatenablog.com 要約すると身近なJPG、 PNG が対応しているとのことで、GIFは静止画のみが読み込まれるようです。なるべく前者の2つを使用するのがいいと思います。 プログラム 次にプログラムの説明をしていきたいと思います。自分もあまり理解できていない点があるので浅広な内容になってしまいますがご了承ください。 単純な モグラ たたきに似て非なるものを作ってみました。

自作webサイトをモバイルアプリ化!?【PWA】

  今回はPWAの使い方をまとめてみます。   背景 ツールなどを使った スマホ アプリの自作の記事などが増えてきて初心者でも作れるようになりましたがそれでも一から作ろうとするとツールの使い方や言語などいろいろな知識が必要になってきます。またツールなどを使うとパラメータが多くて何が何だかわからなかったりします。作りたいけど情報量が多すぎて挫折してしまう方もいるでしょう。(自分がそうなので。) しかし Google が推進しているPWA( Progressive  Web Apps)を使うことによって(まだOSによって制限もありますが...)webサイトを ネイティブのモバイル用アプリのよう にしてしまうことが出来ます。本来であればwebサイトにpush通知やホーム画面にアイコンを出す、オフラインでも機能することはできませんがこれを実現できるのがPWAというわけです。webサイトとしても使えてアプリとしても使えるとなるとOSや端末の縛りが甘いので クロスプラットフォーム なところも見どころですね。 以上を踏まえて本来の アプリ制作 に挫折してしまったのでPWAを使ったアプリもどきを作っていきたいと思います。 しかし先ほども言ったように ネイティブのモバイル用アプリのよう にするので本来のアプリより機能が制限されています。二回目ではありますが、OSによって制限もあるというのも注意する必要があります。PWAについての詳しい説明は記事がたくさんあるので自分で探してみると良いでしょう。 前提条件 GitHub のアカウントを持っていること 統合開発環境 などがあると良い webサイト作成の知識があると良い 参考にさせて頂いた記事 こちらの記事がとても参考になりました。↓ PWA 入門 〜iOS SafariでPWAを体験するまで〜 2019年7月更新 - Qiita ひな形 github.com PWAの作り方に関しては先人達がたくさんの参考文献を書いてくれているので今回はひな形を用意しました。 この後の説明はこちらを使って説明していくのでクローンしてくるかZIPで落とすかしてください。 PWA作成 PWAのひな型作成の参考にさせて頂いた 記事 と同じような内容になってしまうので大まかな説明は省きますが補足や一部内容が変わっている部分はプログラムのコメントに書いてあります。