DreamerDreamのブログ

夢想家の夢です。〜揚げたてのモヤっとしたものをラフレシアと共に〜

プログラミング

RaspberryPiと炊飯器で低温調理器を自作してみた⑦ 「温度、タイマー設定デーモン」

設定ボタンによって温度とタイマーの設定を行なうデーモン 物理ボタン操作で温度とタイマーの設定を変更するためのデーモン。 少しチャタリング対策に難があり、あまりスムーズに動かないorz。まあ、とりあえず動く。 このプログラムが無くても直書きでシス…

RaspberryPiと炊飯器で低温調理器を自作してみた⑥ 「スタート/ストップデーモン」

スタートボタンが押されたら/dev/shm/領域にスタートファイルを生成、ファイルが存在している場合はスタートファイルを削除するデーモン スタートファイルに日時を保存する。 このスタートファイルが存在することを確認したら、ヒーター制御デーモンが指定温…

RaspberryPiと炊飯器で低温調理器を自作してみた⑤ 「温度取得デーモン」

単純に、センサモジュールから取得出来る値から℃を抽出して共用ファイルに保存するだけのデーモン。 本来、必用なプログラムが各々センサ値を読めば良いのですが、読み出しに時間が少しかかるため、温度取得専用のプログラムから共用ファイルに書き出しおく…

RaspberryPiと炊飯器で低温調理器を自作してみた④ 「画面表示デーモン」

ディスプレイの表示用プログラムです。 画面は今回たまたま手元にあった2色のカラーOLEDディスプレイをを利用しただけで、表示内容をファイルを読んで変えられるようにしただけで表示方法はほぼ以前に書いた記事のまま特に手を加えていません。↓ dreamerdre…

RaspberryPiと炊飯器で低温調理器を自作してみた③ 「ファイル統括モジュール」

前回、各種ファイルの説明をしました。 今回はプログラムの中身です。 <file_mng.py> これは全てのプログラムから共用するファイルデータを扱います。 (※get、loadが混在している等、突っ込みは無しでお願いします) # -*- coding: utf-8 -*- import os dir_shm = '/dev/sh</file_mng.py>…

RaspberryPiと炊飯器で低温調理器を自作してみた② プログラムの内部構造 ソフトをデーモンとして分割処理させる

前回、ざっくりした回路を組みましたのでハードは完成です。 dreamerdream.hateblo.jp 今回はこの回路を制御する為のラズパイ側のプログラムを機能別に分割していきます。 分割処理させるメリットとして 後で機能を追加したりしやすくなる。 温度の取得とか…

RaspberryPiと炊飯器で低温調理器を自作してみた① 制御基盤作成

いきなりですが、低温調理器って憧れますよね? これがあるとローストビーフにチャーシューにぃ、いろいろなことができるんです! しかし、単純に63℃とか70℃とかを長時間維持するだけの機能なのに高ケーなオイ! いや専用器具はそれなりの機能が備わってい…

Djangoのログイン画面「Django管理サイト」を変える備忘録

Djangoでいくつかサイトを作ってみたものの、いつもログイン画面の 「Django管理サイト」 が消えないことに悩んでる気がします。 「いい加減覚えろっ」てことなんだけど、実に面倒なので自分のためにも後の人のためにも備忘録として残しておくことにします。…

ウォッチドッグって何?

前回、防犯カメラの修理で「ウォッチドッグ」という機能によりレコーダーが再起動をしていると推測しました。 dreamerdream.hateblo.jp 今回はこのウォッチドッグについて簡単にご紹介します。 watchdog = 番犬 です。 電子工作、特にマイコンを使った工作の…

画面の無いVPSサーバーでSeleniumを使ってChromeブラウザを操作してみる

通常、ブラウザの操作は画面が無いと出来ません。 しかし、Seleniumを利用した自動操作はページ内要素を見ているので画面を必用としません。そういった画面の無いブラウザのことをヘッドレスブラウザと呼ぶのだそうです。 前回はラズパイでこのヘッドレスブ…

プログラムで画面が表示されないブラウザを操作する(ヘッドレスブラウザ)

プログラムでブラウザを操作して自動で情報の収集やテストなどをする方法に Selenium WebDriver を使う方法があります。 <参考> Selenium WebDriver入門 - Qiita 僕はこれまでPC上のJavaでSeleniumを使っていろいろ自動化ソフトを作っていたのですが、PCの…

ステッピングモーターってこんなにスゴイ! 使用例いろいろ

ステッピングモーターの制御方法については以前の記事を参考にしてください。 dreamerdream.hateblo.jp 今回はステッピングモーターってスゴイんだよ。というサンプル動画をご紹介します。 まず始めにコチラの動画 円盤に開いた穴に正確にピンを刺しています…

1つづつ光らせることができるLEDテープ「ネオピクセルLED」ってご存知でしょうか?

「LEDテープ」といえば車のデコレーションに使ったり、TVの有吉ゼミでヒロミがDIYで間接照明として多用しているオシャレに光るテープですね。 ↓ヒロミが御用達のLEDテープ業者さん TVで紹介されました!再入荷!LEDテープライト 5m LEDテープRGB 8000円以上…

可変抵抗でサーボモーターを動かすということは

ロボットの操作に「遠隔操作」 というものがあります。 人間が離れた場所から信号を送ってロボットに伝えるアレですね。 そうです、身近なところではラジコンがあります。 仕組みは、 人がボリューム(可変抵抗)やスイッチで操作した信号を機械が読み取って…

Djangoの使い方⑫画像などのファイルを簡単にサーバーにアップロードする

前回記事 dreamerdream.hateblo.jp 今回は作ったサイトへファイルを簡単にアップロードする方法です。 ブログサイトとか作る場合には絶対必要な項目! Djangoにファイルをアップロードする為の方法に「データベースに登録する」「モデルを利用する」という方…

スマホでSSH接続やプログラミングが出来るんですって!?

つい先日、外出先で自分の作ったサイトをのんびり楽しんでいたら不具合を発見! 「すぐ修正しないと!」と思ったもののパソコン持って来てないしネットカフェも無いし困りました。 ふと、「スマホでターミナル使えないのか?AndroidってLinuxベースだよね?…

RapberryPiでステッピングモーターを制御する ④制御

今回は実際にラズパイから制御してみます。 前回はGPIOとドライバーとの接続でした。 dreamerdream.hateblo.jp 適当なpythonコードを書いて制御してみます。 #!/usr/bin/python#coding:utf-8 import RPi.GPIO as GPIOimport atexitimport time Dir = 27 #DIR…

RapberryPiでステッピングモーターを制御する ③接続

前回は部品選択でした。 dreamerdream.hateblo.jp 今回は部品の繋ぎ方です。 まずは、ラズパイから制御できるようGPIOのポートをチェックしましょう。 ステッピングモータードライバーを制御するには、最低DIRとSTEPとGNDが必用になります。 今回はピン番号9…

RapberryPiでステッピングモーターを制御する ②部品選択

前回、ステッピングモーターの制御にはユニポーラ制御とバイポーラ制御がありますという説明をしました。 dreamerdream.hateblo.jp ユニポーラの方が構成回路は簡単になりますが専用のドライバは少ないのでマイコンを用いて自前で組むことになるでしょう。 …

RapberryPiでステッピングモーターを制御する ①原理

ここ最近、ブログがソフトウェア的な内容ばかりで飽きてきたので今回は気分を変えてハードウェアのお話です。 「ステッピングモーター」はご存知でしょうか? 「知らないよ」という方はまず使用例をご覧ください↓ dreamerdream.hateblo.jp ここ近年3Dプリン…

Djangoの使い方⑨Apacheで複数のDjangoプロジェクトを綺麗に振り分ける方法

前回記事 dreamerdream.hateblo.jp Apacheで静的なページを振り分ける方法はコチラ↓今回はこの応用です。 dreamerdream.hateblo.jp (Apacheは2.4です) 静的ページと同じようにDjangoで作ったページも振り分けることが出来ますが、WSGIモジュールを挟むので…

Djangoの使い方⑤ユーザー認証を追加する(会員ページ、ユーザー専用ページ)

前回はApacheのドキュメントルート以外でDjangoを動かしました。 dreamerdream.hateblo.jp 今回はDjangoのサーバー機能を使ってユーザー認証機能のテストをします。 ユーザー認証は会員専用ページとかユーザー専用のページを作るには必須事項です。 Djangoは…

Djangoの使い方④サーバー連携Ⅱ(Apache2のドキュメントルート以外でDjangoを動かす)

前回、Apacheのデフォルトドキュメントルート「/var/www」以下でApacheとDjangoを連携しました。 dreamerdream.hateblo.jp 今回はApacheのドキュメントルート以外でDjangoプロジェクトと連携します。 何故って?それはApacheの設定ミスやセキュリティーホー…

Djangoの使い方③サーバー連携Ⅰ(Apache2とDjangoの連携テスト)

前回はDjangoアプリケーションを作ってみました。 dreamerdream.hateblo.jp そうすると本格的な運用環境が気になりますよね? Djangoのサーバー機能はテスト用なので本格運用となるとサーバーソフトが必要になります。 いくらDjango上で上手く動いていても本…

Djangoの使い方②基本のアプリケーション作成(HelloWorld!)

前回①のように dreamerdream.hateblo.jp Djangoが無事に起動して基本画面を表示してくれたら今度は「Webアプリケーション」を作成しましょう。 といっても今回は静的ページに「HelloWorld!」と表示するだけのものですが、これが全ての基本ですので舐めない…

Djangoの使い方①基本(超簡単!5ステップでDjangoを動かす)

Djangoってかなり奥が深いWebフレームワークなんで超初心者向けのサイトはあまり無いんですよね。(チュートリアルが難しいのなんのって・・・) 書籍としてkindle本なら0円で読めるものがあったりしますが↓どうなんでしょうね? 僕の奮闘記はこちら↓ dream…

Django奮闘記⑩ラストスパートーユーザービリティーー

今回は始めてのDangoアプリ生成の最終章です。 気合いが入ります! はじめての Django アプリ作成、その 7 | Django documentation | Django 前回は画像とスタイルシートを扱いました。 dreamerdream.hateblo.jp 今回は使い易さを求めてデフォルトからカスタ…

Django奮闘記⑨百聞は一見にしかずーstaticディレクトリー

前回は面白く無いテストばかりでした。 dreamerdream.hateblo.jp 今回はサイト作成にはとても重要な要素、楽しい楽しい画像やスタイルシートについてです。 情報を伝えるのに見た目ってすごく大事! チュートリアルは6/7ページ目 はじめての Django アプ…

Django奮闘記⑧憂鬱ーテストー

前回は謎が解決できてヤレヤレでした。 dreamerdream.hateblo.jp 今回もこちらの続きをします はじめての Django アプリ作成、その 4 | Django documentation | Django 今まで作ったプロジェクトを「汎用view」というのに対応させるのですね。 実は汎用view…

Django奮闘記⑦忠実にーDREAM ON!ー

前回は「とうとうここまで来て諦めないとダメなのか?」という絶望と「何やねん!このチュートリアル!!」という怒りが炸裂しました。 dreamerdream.hateblo.jp だがしかーし! 気付いてしまったのですよ!重大なミスを!! フォームで設定しているはずの「…

kampa.me