【iPhone】【Mac】ボイスメモとブックで自作オーディオブックを作成、そして聴く

概要 Apple純正のアプリであるボイスメモAppとブックAppでオーディオブックを自作して、聴く方法です(^^) 環境(Mac) macOS Catalina 10.15.2 MacBook Air late2018 ブック バージョン2.2(1875) 理由 自作するしか無かった! 録音アファーメーションを試してみたい! Audibleなどのサービスに読みたい本があれば良かったのですが、無いので自作に踏み切りました! アファーメーションは、なりたい像や希望を自分の声で発して、聴くことで潜在的に可能にする概念ですね。これは、自分で音読するしか無いので自作しかありません。 流れ(ざっくり) 私は以下の手順で、作成→聴いています。 【iPhone】はiPhoneでの作業、【Mac】はMacでの作業です。【iPhone,Mac】のように両方書いてあれば両方使います。 ボイスメモAppで録音、編集【iPhone】 ボイスメモAppからMacのデスクトップに保存【iPhone,Macどちらでも】 タグ情報編集【Mac】 ブックAppにドラッグ・アンド・ドロップ【Mac】 iPhoneとMacをLightningケーブルで接続して、同期する【iPhone,Mac】 聴く【iPhone】 流れ(詳細) ボイスメモAppで録音、編集【iPhone】 録音はiPhoneで統一しています。 ボイスメモAppはiCloud同期なので、iPhoneでもMacでもシームレスに扱えますが、録音するデバイスを変えてしまうと、マイクとの距離や感度が変化するので、連続して聴いた時に音量が変化してとても聞き辛くなります。 なのでiPhoneでなくとも統一するのがオススメです! また、ボイスメモAppでも聞けますが、複数の録音を連続再生できません。 つまり、章ごとに区切っていたら、章が終わったら、次の章は手動で再生しないといけません(めんどくせぇ!)→ブックAppで解決! バックグランド再生はできます。 ボイスメモAppからMacのデスクトップに保存【iPhone,Macどちらでも】 MacにてボイスメモAppからデスクトップにドラッグ・アンド・ドロップすれば、「.m4a」の拡張子で音声データが出力されます。 デスクトップもiCloud同期しているなら、iPhoneのボイスメモAppからでもデスクトップに出力できます。その場合は、「・・・」→「”ファイル”に保存」で出力できます。 デスクトップと書きましたが、その限りでないです。要はMacに現れれば良いので、DropboxでもGoogle Driveでもなんでもよいです。好きなのをお使い下さい(^^) タグ情報編集【Mac】 メタ情報、メタデータと言ったりもします。 タグ情報とは、本のタイトルや章、著者などです。 オーディオブックでは、 本のタイトル = アルバム名 章 = 曲名 著者 = アーティスト名 となります。 タグ情報編集はミュージックAppでもできるのですが、私の環境では、ブックAppと同期したときに情報がおかしくなったのでミュージックAppを使うのはやめました。 フリーソフトのTag Editor Freeを使用します。 何回か使うと、サブスクリプションを促すウィンドウが出ますが、拒否してても使えています。 ちなみに、アートワークは何故か、Macでは出ていてもiPhoneには反映されなかったのでタグ情報でも入れるのはやめました(余計な情報は問題の元なので) ブックAppにドラッグ・アンド・ドロップ【Mac】 ドラッグ・アンド・ドロップした時点で、ブックAppのライブラリにデータがコピーされるので、デスクトップのデータは削除して良いです。 ライブラリの場所はとても分かりづらいのですが、以下です。これが全然見つからなかった! /Users/”あなたのユーザ名”/Library/Containers/com.apple.BKAgentService/Data/Documents/iBooks/Books/Audiobooks/ ブックApp中から削除すれば、このフォルダからも消えます。 例えば、何回かやり直す時 順番がめちゃくちゃになってやり直す等、試行錯誤するかと思います。 そんな時はブックApp上から削除して再度追加すれば綺麗サッパリ元通りになります。 ただし、ブックApp上で削除すると元データは消えてしまうので、避難させてください。大事なデータが消えます! ...

2020/02/07 · Last updated on 2021/01/23 · 1 min · 118 words

サラダチキンが食べたくて低温調理器を作った(が、サラダチキンは作っていない)

みんなの筋肉、サラダチキン🐓 サラダチキンを作ろう。 どうやってサラダチキンを作る? 先人たちの智慧を借り、低温調理器を使えば作れそうとわかりました。 火で焼くのではなく、60℃程度の低温でじっくり火を通すことで、肉が固くならず、美味しくできるのですね。 調べると、美味しそうな情報ばかり。皆さん、作るのが上手ですね。市販はパサつきが気になりますが、自作するとジューシー。それでいて安い。 低温調理器といえばAnovaが有名ですね。 でもお高いですね。スタイリッシュですね。2万円弱します。買えないです。じゃあ作りますか。 というわけで、サラダチキンを作るために低温調理器を作ります。 低温調理器で調べると低価格なものがたくさん出ていますね。水を入れる容器とかもセットになったのが売っているし、もう作る意味が無いじゃないかと。でも良いんです。です。。。 チキンの加熱時間 中心部温度が60℃で1時間加熱すれば、食中毒は回避できそうですので目安とします。 必要なもの サーモスタット、水を温めるヒーター、水を入れる容器が必要ですね。 Amazonで↓こんなサーモスタットが売っているので買ってしまえば簡単なのですが、それでは面白くないのである程度自分で作ってみることにしました。(といっても、中身の動作は同じです。作りたいだけ。) サーモスタット(温度コントローラ)の役目は、設定温度に一定に保つことです。(今回なら60℃キープ) これを実現するには、温度センサで温度を監視しておいて、設定温度になったらヒーターの電源を切って、温度が下がったらヒーターの電源を入れて温めてあげるようにすれば良いです。 回路、パーツ、コスト 回路、パーツを考えました。 金額 購入場所 サーモスタット(温度コントローラ) 710 Amazon 水を温めるヒータ(100W) 2,600 Amazon SSR-40 DA(AC24~380V 40A) 1,000 秋月電子 ガラス管ヒューズ MF61NR (250V 15A 32mm) 40 秋月電子 ACアダプター(DC12V 1A) 580 秋月電子 ケース 250 秋月電子 ヒューズホルダー 45 秋月電子 支柱、ネジ、ケーブル、スイッチ、水を入れる容器など 0 手持ち 合計 5,225 サーモスタット(温度コントローラ) Amazonで2個セットがあったので購入しました。 本当は1つで良かったのですが、2個セットが安かったのでこれにしました。 動作としては、測定温度が設定温度より低い時は基板上のリレー(黒い箱)がON(K0-K1間が導通)し、高い時はOFF(K0-K1間が開放)します。これにより、以下で紹介するSSRをスイッチングします。 説明書は「XH-W1209」でググるとでてきますが、以下にも貼っときます。 http://www.wav-j.com/support/XH-W1209/waves-W1209-manual.pdf ヒステリシスは初期設定の2℃としました。 温度センサ(NTCサーミスタ)付き。 AC100VをON・OFFするのに、サーモスタット基板上のリレーではなくSSRを使うわけ サーモスタットの取説を見ると、リレーは「最大AC240V 5Aをスイッチングできる」とあります。(ここで言う電流は実効電流(5Arms)と考えます。) ...

2020/01/26 · Last updated on 2023/09/22 · 1 min · 177 words

SD Card Copierでラズパイのバックアップ(クローン)もしくは、rpi-clone + cronで毎夜1時にバックアップする

ラズパイにはいろいろな環境を構築して1年ほど安定稼働しています。 何も問題が無いので、いままでバックアップの対策を全く考えていませんでした。 SDカードは寿命があり突然死するので、データが吹っ飛んだことを考えると再構築とか気が重いです・・・ ですのでバックアップをしましょう。 2パターン紹介します(^^)(動作は同じです) 環境 Raspberry Pi 3B+ OS : Raspbian stretch9.3(lite版なのでデスクトップは無しでCUIのみですが、後からデスクトップを入れました) バックアップ(クローン)手段 2パターン バックアップ(クローン)と書きましたが、今回紹介する方法はSDカードを新たにもう一枚用意して、そちらにクローンを作成する方法です。 クローンですので、そのまま差し替えればブートします。 SDカードが死んでも入れ替えればいいので楽ですね(^^) 2パターンというのは、ざっくりGUI(デスクトップ)かCUI(ターミナル)の違いです。 以下2つです。 SD Card Copier GUI動作 視覚的にわかりやすい rpi-clone ←私はこれを利用 CUI動作 cronで定期動作可能 当初はSD Card Copierしか知らず、デスクトップ環境を導入してまでやりましたが、rpi-cloneで同じことができるので、今はrpi-cloneだけ使用しています。 また、毎回GUIでコピーするのはダルいので、毎夜1時にrpi-cloneをcronで定期実行しています。 これでSDカード突然死の恐怖から開放されました! また、これらのソフトはSDカードの容量はクローン先が小さくても大丈夫です。(もちろん入り切ることが前提ですが) つまり、クローン元が32GBでも、10GBしか使っていなければ、クローン先SDカード容量は16GBでも良いということです。(使っている部分のクローンを作るため) Windowsなどで行おうとすると同じ容量でないと弾かれますので、手持ちの幅が広がるメリットですね。 とは言いつつ、私はクローン元も先も32GBで同じ容量にしています。(手持ちであったことと、Home Assistantのデータが今後肥大していく想定だからです) また、これらは起動中のシステムのクローンを作れるのでラズパイの電源を落とす必要はありません。 それでは、導入など紹介します(^^) 共通して必要なもの クローンを作るSDカード USB接続のSDカードリーダー クローン先のSDカードはUSB-SDカードリーダーでラズパイにUSB接続するのが楽です。 Amazonなどで探せば、数百円で手に入ると思います。 小型のものが扱いやすいです(^^) ちなみに私はこれを使ってます。 SD Card Copierでバックアップ(クローン作成) まず、USB-SDカードリーダでクローン先のSDカードをラズパイに接続します。 SDカードマウントの確認 どこにマウントしたかを確認が必要なので、以下を実行します。 $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 1 29.8G 0 disk ├─sda1 8:1 1 41.8M 0 part └─sda2 8:2 1 29.8G 0 part mmcblk0 179:0 0 29.8G 0 disk ├─mmcblk0p1 179:1 0 41.8M 0 part /boot └─mmcblk0p2 179:2 0 29.8G 0 part / /dev/sdaにマウントしたことがわかりました。これは各々の環境で異なりますので確認してみて下さい。 ...

2020/01/20 · Last updated on 2023/09/22 · 4 min · 687 words

LaVie Z LZ550MSSをWindows10にしたらタッチパッドのドライバが無くなったので別のを当てて動作!

軽い、薄いのLaVie Z LZ550MSSです。少々古い機種ですが、まだ使えます^_^ メインバッテリーも死に、充電ができないので電源コードを引っこ抜くと電源が落ちます。(このシリーズはバッテリーがどうもダメみたいですね) 軽量デスクトップとなりました・・・ そんなLaVie Z LZ550MSSにも生きる道、Windows10です。(もともと7) なんにも考えずにクリーンインストールしたらドライバも全部消えてしまいました。 Double Driverでバックアップしとくべきだった・・・・ もれなくタッチパッドのドライバもなくなり、二本指スクロールや拡大などができなくなりました。 一応標準ドライバが当たってて動作はします。 が、元々あった機能が使えなくなるのは不便です。 ですので、タッチパッドのドライバをあてます。 ですが、ドライバは探しても全然でてこない。NECには無さそう。 Lenovo用のSynapticsドライバを当てたら動いたという記事を見つけたので、試しにやってみたらLaVie Z LZ550MSSでも動きました。やったね☆ 感謝(_ _) ドライバのダウンロード 以下からドライバをダウンロードします。 ドライバの展開 ダウンロードしたインストーラを実行すると、以下のフォルダにドライバが展開されます。 c:driversTouchpad Driver (Elan, Synaptics) あとでドライバを当てる時に指定しますので覚えておきます。 ドライバを当てる Windowsマークを右クリック → デバイスマネージャー(M)を選択し、デバイスマネージャーを開きます。 標準PS/2ポートマウス をダブルクリックして開きます。 ドライバー タブを開き、ドライバーの更新(P)を開きます。※画像がすでにSynaptics Pointing Deviceとなっていますが、ドライバーを当てたあとにこのスクショをとったためです。 コンピューターを参照して・・・・ を開きます。 利用可能なドライバーの一覧から選択します を開きます。 互換性のあるハードウェアを表示のチェックを外して、ディスクを使用 を開きます。チェックを外すと表示が変わります。 参照 をクリックします。 先程展開したドライバーのフォルダを選択し、SynPDを選択して開くをクリックします。Synapticsのフォルダなのでお間違えなく! OK をクリックします。 ドライバーが読み込まれますので、次へ をクリックします。 警告がでますが、気にせず進めます。はい をクリックします。 ...

2020/01/18 · Last updated on 2020/01/18 · 1 min · 71 words

【解決】The mobile_app component is not loaded. homeassistantのiOSアプリのエラー

The mobile_app component is not loaded. 特に何かいじったわけではないのですが、homeassistantのiOSアプリで以下のようなエラーが出るようになりました_(:3」z)_ homeassistantにアクセスして、ログイン画面までいけるのですが、そのあとにこの表示です。 homeassistant にはSafariからアクセスできるのですが、iPhoneのトラッキングもしておりステータスの取得はこのアプリから行うので、アプリは使えるようにしておきたいです。 フォーラムでの議論 フォーラムでも同じ内容が議論されていて解決策が記載されていました。 私と同じ現象(何もしてないのに、なんか使えなくなったぞ!)がトピックであがってました。 公式ドキュメント(上のリンク)にも解決策は書いてあるぞ、とのことです。 解決策 フォーラムにそのまんま答えが書いてありますが、 Configuration.yamlファイルに以下の記述を追加し、homeassistantを再起動します。 default_config: やることはこれだけです。私は下の画像のように追加してアプリが動きました^_^ どこに追加しても良さそうですが、元々config:が書いてあった下に書きました(何となく笑) なんらかの理由でdefault_config:が追加できない時は少なくともmobile_app:などを追加しろと書いてあります。これもどこに書いてもいいと思います。 公式ドキュメントのRequirementsのところです。(画像も載せました) 使えるようになりました^_^ 記載したあとは、再びアプリを起動すると今度はすんなり進みました^_^ 以上です^_^

2020/01/08 · Last updated on 2023/09/22 · 1 min · 25 words

Ti C2000リアルタイム制御32bitマイコンでLチカ

TiのC2000リアルタイム制御マイコンの勉強を始めました。 パワエレ制御専用の高性能32bitマイコンです。 専用とだけあって制御に特化した機能盛り沢山なマイコン(例えばPWMの出し方多彩、割込み豊富)ですが、まず使い方がわかりませんので、勉強していきたいと思います。 mbedやArduinoなど、開発がわりと優しめのマイコンばかり触れてきたため、定義をしっかり設定したり、レジスタを操作したりと、より深い部分を操作することは敷居が高く感じます。 まずは、開発環境であるCCS(Code Composer Studio)の導入から、電子工作分野のHello WorldであるLチカをやってみたいと思います。 具体的には評価ボードの基板(controlCARD)上のLD3(赤色)をタイマー割り込みで1秒毎に点滅させます。 早速、CCSの使い方でつまずいてましたw 環境 CCS9.2.0 Build 9.2.0.00013 Windows10 Pro バージョン1809 64bit controlSUITE v3.4.9 参考 TMS320C2000:Piccolo MCUのソフトウェア開発入門 http://www.tij.co.jp/jp/lit/an/jaja230a/jaja230a.pdf JAJA230A-2012年8月 小幡 智 氏著 この資料を参考にさせていただいております。非常に良くできた資料で、日本語の資料が少ない中、とても助かりました。 資料の作成が2012年とあり、7年前と少々古いですがCCS9.2.0でも問題ありませんでした。 資料中ではCCS5を使われてます。 記載したプログラムもこの資料から引用させていただきました。 Lチカプログラムほか、ePWM(HRPWM含む)やADコンバータなども掲載されています。 準備 CCSのダウンロード CCSは開発環境です。 参考資料ではCCS5を使用していますが、私は2019年12月時点で最新のCCS9.2.0を使ってみました。 以下からダウンロードできます。 サイズが大きく、丸ごとダウンロードするofflineインストーラとインストールしながらダウンロードするwebインストーラの2種類がありますが、どちらでも構いません。 controlSUITEのダウンロード controlSUITEはヘッダーファイルやサンプルや回路図などの情報をまとめたアプリケーションです。 データシート、リファレンスノート、回路図、その他資料、さらにはそれらのバージョン管理などをユーザーが管理していましたが、それでは大変なのでTiがまとめてくれたのがこれです。 以下からダウンロードできます。 プログラムを動かすには、controlSUITEをインストールしてできるフォルダ(ヘッダーファイルや、その他重要なデータ)をワークスペースにコピーする必要がありますので、インストール必須です。結構重いですが。 また、評価ボードの回路図もcontrolSUITEのフォルダに入っています。 使うマイコンなど 評価ボード : F28035 Piccolo Experimenter’s Kit 型名 : TMDSDOCK28035 このベースのボードは様々なcontrolCARDを挿せるようになっています。 今回は28035のcontrolCARDがセットになった実験用キットを使用します。 日本語と英語のページの情報が若干違うので、両方リンクを載せておきます。 動作確認の時、ベースボードの何pinに出力するか確認したいですが、ベースボードのシルク印刷が対応しています。 つまり、GPIO0を確認したいならシルクでGPIO00のpinを当たれば良いです。(シルクは「00」と書いてあります) 回路図、部品表、基板図面はcontrolSUITEをインストールした時の以下のフォルダにあります。 C:\ti\controlSUITE\development_kits~ExperimentersKits\DIM100ExperimentersKit-HWdevPkg_v2_0\R3 また、PCとはUSB接続しデバッグしますが、このボードのエミュレータは以下です。CCSの設定時に必要になります。上記の英語のリンクに書いてあります。 On-board XDS100v1 JTAG debug probe ...

2019/12/21 · Last updated on 2019/12/21 · 4 min · 647 words

MacのUSキーボードでKarabiner使用時にショートカット誤爆する(Safari)

使っているMacBook Air late2018はUS配列なんですが、かな、英数変換にはKarabinerを使って左右のcommand⌘で行っています。 とっても使いやすいのですが、1つ頭を悩ませる問題が・・・・ それがショートカットが誤爆してしまうこと(誤ってショートカットが起動してしまう) 今までJIS配列を使ってきたので出会わなかった問題ですが、command⌘はコピーや貼り付けなどさまざまなショートカットで使用されているので、command⌘を使っている以上誤爆は避けられないかもしれませんね。 私が使っていて頻発するのは、こんなの や、こんなの つまり、 ブックマークに追加… command⌘ + D タブを閉じる command⌘ + W です。 起きている事 上の画像で、お気に入りページ名が「e」になっていますが、いつも「e」になります笑 つまり、何が起きているかと言いますと、左command⌘を押して、かなにしてから「で」と打とうとしているわけですが、command⌘から手が離れずそのままDが押されることでショートカットが起動し続いてEが押されることで名前が「e」になっております。 対策 自分で気をつけながら打てば問題ないですが、それでは快適ではないので嫌です笑 なので、上記のSafariのショートカットを変更します。OS標準機能で変更できます。 具体的には以下のように変更します。 ブックマークに追加… command⌘ + D → control^ + command⌘ + D タブを閉じる command⌘ + W → control^ + command⌘ + W 変更の仕方 Safariにだけ適用しましたが、適用範囲は選べます。 変更後にすぐに反映されます。 注意点は一字一句間違えない事です。ここでは、ブックマークに追加…の「…」までをしっかり入力する事です。 「ブックマークに追加…」の変更前後 「タブを閉じる」の変更前後 参考サイト 以上^ ^

2019/12/16 · Last updated on 2019/12/16 · 1 min · 54 words

温湿度センサーDHT11で取得したデータをシリアル通信でmbedからPCに送る

前回、mbedとDHT11を使って、取得した温湿度をlcdに表示させました。 その時の記事↓ やること 今回は、lcdにも表示させつつ、PCにシリアル通信でデータを送り、PC上で表示させてみたいと思います。 環境 Windows10 Pro バージョン1809 64bit 概要 次はPythonかProcessingでシリアル通信して表示させたいのですが、まずはPCのシリアル通信ソフトで試してみたいと思います。 今回はwindowsで行っているので、TeraTermを用います。 結線 前回と同じです。 表1 : DHT11とmbedの接続 DHT11 mbed 備考 電源(赤色) VOUT 3.3V センサー出力(緑色) 23pin なし GND(黒色) GND 0V mbedのプログラム #include "mbed.h" #include "TextLCD.h" #include "DHT.h" //lcdの初期設定 TextLCD lcd(p10, p12, p15, p16, p29, p30); // RS(4), E(6), D4(11), D5(12), D6(13), D7(14), GND R/W(5) //シリアル通信の初期設定 Serial pc(USBTX, USBRX); // tx, rx //LED1の初期設定 PwmOut led1(LED1); //pwm出力 //DHT11初期設定 DHT sensor(p23,DHT11); //sense:p23 vcc:vout(3.3V) gnd:gnd float temp_data = 0; float humi_data = 0; float temp_sum = 0; float humi_sum = 0; int c = 0; float temp_ave = 0; float humi_ave = 0; Ticker flipper; int err; //"Ticker" 繰り返しタイマー割り込み //割り込みの時にlcdに表示 void flip(){ //lcdに表示 lcd.locate(0,0); lcd.printf("Temp is %2.0f C",temp_ave); //整数の精度なので、小数点以下は出さない lcd.locate(0,1); lcd.printf("Humi is %2.0f %%",humi_ave); //整数の精度なので、小数点以下は出さない //teratermに表示 pc.printf("Temp is %2.0f C\n",temp_ave); //整数の精度なので、小数点以下は出さない pc.printf("Humi is %2.0f %%\n\n",humi_ave); //整数の精度なので、小数点以下は出さない } //main関数 int main(){ lcd.cls(); lcd.locate(0,0); //lcdの表示消去 lcd.printf("Temp and Humi \nSensor"); wait(1); //安定するまでしばし休み lcd.cls(); flipper.attach(&flip,10); //タイマー割り込み動き出す。 10秒ごとに割り込みでvoid flip()に飛ぶ。 while(1){ err = sensor.readData(); if (err == 0){ //err=0は,データが取れたということ。 temp_data = sensor.ReadTemperature(CELCIUS); humi_data = sensor.ReadHumidity(); temp_sum = temp_sum + temp_data; humi_sum = humi_sum + humi_data; c++; if(c==10){ temp_ave = temp_sum/11; humi_ave = humi_sum/11; temp_sum = 0; humi_sum = 0; c=0; led1=0.1; //アベレージが取れたらLED1点灯。眩しくてうざいのでpwmで暗くした } } else{ led1=0; } } } 前回のコードからあまり変わりませんが、シリアル通信に関する部分を追加しています。 ...

2019/12/14 · Last updated on 2019/12/14 · 2 min · 234 words

Apple Keyboard(有線)の未使用キーにAutoHotkey(インストール不要)を使ってスクリーンショットを割り当て

前回、AutoHotkeyを使って、Apple Keyboard(有線)のかな英数キーに変換、無変換を割り当てました。 前回の記事はこちら↓ 今回は、未使用キーにスクショを割り当ててみました。 スクショは割と多用しますが、Apple KeyboardにはWindowsキーボードにあるプリントスクリーンキーはありませんし、当然、Macで使うプリントスクリーンのショートカットも使えません(WindowsでMacのキーボードを使っているだけなので当然ですが)。 ノートPCにApple Keyboardをさして使っていますが、スクショのたびにノートPCを開くのはダルいので、今回の割り当てを思いつきました。 未使用キーとしては、F13とF14です。 F13には全体のスクショ(通常のプリントスクリーン) F14にはアクティブウィンドのスクショ(Alt + プリントスクリーン) を割り当てます。 環境 Windows10 Pro バージョン1809 64bit AutoHotkey_1.1.30.03(AutoHotkeyU64.exe) Apple_keyboard_wired.ahk 結果から。 以下のプログラムを書き込めば、動作します(^^) 前回記事を適用されている方は、この内容に上書きすれば、かな英数とスクショが動作します。 AutoHotkeyの導入などは前回の記事を参考にしてください(^^) ;2019/08/31 ;2019/12/09 updated #InstallKeybdHook ;Apple_keyboard_wired #USEHOOK ;Macの英数キーをWindowsの無変換キーに割り当てる sc071 Up::Send,{vk1D} ;MacのかなキーをWindowsの変換キーに割り当てる sc072 Up::Send,{vk1C} ;MacのF13キーをWindowsのプリントスクリーンキーに割り当てる sc064 Up::Send,{PrintScreen} ;MacのF14キーをWindowsのプリントスクリーンキーとAltの同時押しに割り当てる(複数キー) ;アクティブウィンドのスクショ *sc065 Up:: SetKeyDelay -1 Send {Blind}{ALt Down} Send {Blind}{PrintScreen} Send {Blind}{ALt Up} return #USEHOOK off ;sc071 : macの英数キー ;sc072 : macのかなキー ;vk1D Windowsの無変換キー ;vk1C 変換キー ;sc064 : macのF13キー ;sc065 : macのF14キー ; ";"はコメントです。 Apple_keyboard_wired.ahkの中身 動作についてはプログラム中にコメントを書き入れましたのでそちらを参考にしてください。 ...

2019/12/11 · Last updated on 2019/12/11 · 1 min · 140 words

mbedと温湿度センサーDHT11で温度湿度を取得してlcdに表示

ひさびさにmbedを引っ張り出してきました。 いつも間が空くので忘れてしまってググりながらやるのですが、この記事も参考にできるように載せます。 やること 温湿度センサーDHT11を使って、温湿度を取得し、キャラクタlcdに表示してみます。 mbedにはLPC1768を使用します。 DHT11は扱いが簡単なモジュールタイプを使います。 注意点 DHT11は安くてお手軽で良いのですが、出力が整数(温度も湿度も)です。小数点以下の値は出ず、0になります。例えば20.4℃でも20.0℃となります。 上位のDHT22でしたら、0.1の桁まで出るようです(持ってないので未確認です) ライブラリには、lcdを動かすにはTextLCD、DHT11を動かすにはDHTをそれぞれインポートしました。 lcdの接続はライブラリに載っている接続と違いますので注意してください(使いたいデジタルピンと重なっていたので変更しました) DHTはそのままです。 DHTの電源範囲は3.3V〜5.5Vですが、今回は3.3V入力としました。温度計を隣において、5V入力だと3.3V入力時よりもちょっと温度が高くでまして、温度計より乖離が大きくなったので「きっと」3.3V用のライブラリだろうと進めました笑(ライブラリはしっかり見ていません笑) 結線 mbedのpinは「mbed ピンアサイン」で検索すると出てきます。 接続は以下の表1のようにしました。 表1 : DHT11とmbedの接続 DHT11 mbed 備考 電源(赤色) VOUT 3.3V センサー出力(緑色) 23pin なし GND(黒色) GND 0V プログラムの説明 プログラム中にコメントを入れていますのでざっくりと説明します。 仕様をみると、DHT11は2秒以上でサンプリングするようですが、見ているとだいたい1秒間隔ぐらいで温湿度を取得して値をくれていそうです。しかし、取得に失敗することもあるようなので、失敗しなかった時に値をもらうようにします。 タイマー割り込みで、10秒おきにlcdの表示を更新してます。 取得値そのままでも値がバタつくことはなかったのですが、気休めで11回の平均値をlcdには表示しています。 #include "mbed.h" #include "TextLCD.h" #include "DHT.h" //lcdの設定 TextLCD lcd(p10, p12, p15, p16, p29, p30); // RS(4), E(6), D4(11), D5(12), D6(13), D7(14), GND R/W(5) //LED1を使うので定義 DigitalOut led1(LED1); //DHT11関係設定 DHT sensor(p23,DHT11); //sense:p23 Vcc:VOUT(3.3V) GND:GND float temp_data = 0; float humi_data = 0; float temp_sum = 0; float humi_sum = 0; int c = 0; float temp_ave = 0; float humi_ave = 0; Ticker flipper; int err; //Ticker 繰り返しタイマー割り込み //割り込みの時にlcdに表示 void flip(){ lcd.locate(0,0); lcd.printf("Temp is %2.0f C",temp_ave); //整数の精度なので、小数点以下は出さない lcd.locate(0,1); lcd.printf("Humi is %2.0f %%",humi_ave); //整数の精度なので、小数点以下は出さない } //メイン関数 int main(){ lcd.cls(); //lcdの表示消去 lcd.locate(0,0); lcd.printf("Temp and Humi \nSensor"); wait(1); //安定するまでしばし休み lcd.cls(); flipper.attach(&flip,10); //タイマー割り込み動き出す。10秒ごとに割り込みでvoid flip()に飛ぶ。 while(1){ err = sensor.readData(); if (err == 0){ //err=0は,データが取れたということ。 temp_data = sensor.ReadTemperature(CELCIUS); humi_data = sensor.ReadHumidity(); temp_sum = temp_sum + temp_data; humi_sum = humi_sum + humi_data; c++; if(c==10){ temp_ave = temp_sum/11; humi_ave = humi_sum/11; temp_sum = 0; humi_sum = 0; c=0; led1=1; //アベレージ値が取れたら、LED1点灯 } } else{ led1=0; } } } 今後 次はPCとシリアル通信して、温湿度グラフを書いてみたいと思います(願望。できるかは別として笑) ...

2019/11/30 · Last updated on 2023/09/22 · 1 min · 187 words