工作と競馬2

電子工作、プログラミング、木工といった工作の記録記事、競馬に関する考察記事を掲載するブログ

技術メモ

windowsでlibusbを使う

概要 Windows PC上で、libusbを使ったC言語プログラムをビルドして、動かした。 ランキング参加中DIY 背景と目的 Windows PC上で、libusbを使いたいので、方法をメモる。 詳細 参考 https://www.javadrive.jp/cstart/install/index6.html https://sites.goog…

Raspberry Pi Picoを初起動

概要 Raspberry Pi Picoを動かした。 背景と目的 最近、Raspberry Pi Picoと名乗るマイコンボードが出た。基板サイズはArduino Nanoくらい。RAMやクロック周波数を見ると性能は全然こちらのほうが高そう。そして550円とかなり安いので、とりあえず試したくな…

Wi-Fiの自動再接続スクリプト

概要 Raspberry Piで、Wi-Fiの接続が切れたときに自動で再接続するスクリプトを作成した。 背景と目的 自宅で使っているRaspberryPiのWi-Fi接続が、電波状況が悪いのかよく切れるので、切れたら自動で再接続するように、簡単なスクリプトを組む。 詳細 0. 参…

kerasのサンプルプログラム用データセットのロードがうまくいかないとき(cifar10の場合)

問題 kerasのサンプルプログラム https://github.com/keras-team/keras/tree/2.3.1/examples の中にあるサンプルcifar10_cnn.pyを動かした際、 cifar10.load_data() の部分で、Internal Server Error 500が出てしまって、https://www.cs.toronto.edu/~kriz/c…

PlayStation4(PS4)の純正コントローラを分解する

ランキング参加中DIY 概要 PlayStation4(PS4)の純正コントローラを分解し、L2/R2ボタン、アナログスティックの構造の確認と、外部から乗っ取って制御する方法を試した。 概要 背景と目的 詳細 1. 入手 2. 分解 2.1 裏蓋、裏蓋を外す 2.2 L2/R2ボタン 2.3 ア…

IFTTTが有料化するので、Webhooks/LINE Notify連携レシピの代替をAWSで検討する

概要 IFTTTのWebhook+LINE Notify連携の代替として、AWS API Gateway + Lambdaの動作を確認した。 概要 背景と目的 詳細 1. LINE NotifyのAPI 1.1 トークンの取得 2 試しに送信 3. APIGateway + Lambda 3.1 APIGateway 3.2 Lambda 3.3 試し実行 まとめと今後…

ソーラー発電式自動水やり器を作る(5) --- 無動作時消費電力の低減 ---

概要 自動水やり器の無動作時消費電力を低減させるための回路の変更を行い、無駄な消費が減ったことを確認した。 背景と目的 前回完成した自動水やり器だが、陽が落ちてソーラー発電がなくなると、意外と電池の電圧が下がるのが速いことに気づいた。そこで、…

ソーラー発電式自動水やり器を作る(4) --- マイコンソフトの製作、完成 ---

概要 前回に引き続き、マイコンソフトの製作を行い、システム全体が完成した。 背景と目的 前回に引き続き、マイコンソフトの製作を行い、完成させる。 詳細 1.主な仕様 やりたいことは以下。 一定時間ごとに起動し、それ以外の時間はできるだけ消費電力を下…

ソーラー発電式自動水やり器を作る(3) --- 筐体の設計、製作 ---

概要 前回に続き、回路基板を入れる筐体と水瓶を製作した。 背景と目的 前回に続き、回路基板を入れる筐体と水瓶を設計、製作する。 詳細 1.回路基板を収納する筐体 1.1 満たすべき要件 前回作製した電気回路の基板は薄い木製ベースボードに装着したので、そ…

ソーラーパネルで発電してリチウムイオン電池を充電する

概要 ソーラーパネルで発電してリチウムイオン電池を充電するための回路を作成し、動作を確認した。 ランキング参加中DIY 背景と目的 最近作成している自動水やり器は、ソーラーパネルで発電した電力を電源として利用すること考えている。そこで、ソーラーパ…

ソーラー発電式自動水やり器を作る(2) --- 電気回路の設計、製作 ---

概要 前回に続き、電気回路の設計と、製作を行った。 背景と目的 前回に続き、電気回路の設計と、製作を行う。 詳細 1. 回路全体 以下。ただし、ソーラーパネル発電とリチウムイオン電池まわりはここには書いていない。別途、描く予定。 1.0 電源まわり 大元…

小型ポンプを試す

ランキング参加中DIY 概要 自動水やり用の小型ポンプを試し、動作を確認した。 背景と目的 およそ1年数か月前、こちらの記事で、自動水やりシステムを作りたいと書いた直後、リモート水位センサのシステムの製作により、中断してしまっていたのだが、ようや…

土壌水分センサ(DFRobot社Gravityシリーズ)の動作電源電圧の下限を調べる

概要 土壌水分センサ(DFRobot社Gravityシリーズ)の動作電源電圧の下限を調べた。 背景と目的 スイッチサイエンスで売っていた土壌水分センサを使用したいと考えている。動作電圧下限は仕様書上3.3Vである。 今回使用を想定する電源は、ソーラーパネルとリチ…

WebViewを使ってWebアプリを表示させるアプリを作った時にやったことメモ

概要 WebViewを使ってWebアプリを表示させるアプリを作った時にやったことをメモした。 背景と目的 最近、Webアプリでユーザージェスチャーなしで音声が自動再生されるようにしようとしたところ、ブラウザの制約上どうしても難しいことが分かった。(Web上で…

ソレノイドを動作させてみた

概要 ソレノイドを動作させてみた。 背景と目的 ある事情で、ソレノイドの動作確認をする必要が出た。私は一度も動かしたことがないので、動かしてみる。 詳細 1.対象 以前、コインセレクターの件で、コンセレクターで使用している部品。型番など正体はわか…

ESP32用micropythonで、numpy, scipyライクなパッケージmicropython-ulabを組み込み、FFTしてみる【ulab v0.36.0版】

概要 ESP32用micropythonで、micropython-ulabを組み込んだファームウェアを作成し、無事FFTを実行することができた。また、動作速度も、前回の自前実装FFTより数倍高速化できた。 背景と目的 前回、FFTを実行するためC実装の自作モジュールを組み込んだファ…

Makefileを自分で書いてmakeする場合のメモ

変数 定義、代入 変数名 = 〇〇〇 参照 $(変数名) 環境変数を使う Makefile内のマクロと同じ書き方でよい。ただし、Makefile内の同名変数が優先されるらしい。 表示 $(info $(変数名)) sudoつける/つけないの違いでハマらないように注意 sudoをつけると参照…

ESP32向けmicropythonで、FFTをする自作モジュールを作る

概要 ESP32用のMicroPythonで、FFTをする自作モジュールを作る。 背景と目的 前回、ESP32用のMicroPythonで、C実装の自作モジュールを作る環境が整った。今回は、この環境を使ってFFTをする自作モジュールを作る。なお、PythonでそのままFFTの計算をコーディ…

ESP32向けのmicropythonで、Cで実装した自作モジュールをESP32上で動かす【修正版】

概要 ESP32向けのmicropythonで、Cで実装した自作モジュールを作成した。 背景と目的 かつて、micropythonをESP32で動かして遊んでみたのだが、それ以来ほとんど触っていなかった。しかし、最近とある事情でESP32向けのmicropythonで、Cで実装した自作モジュ…

FlaskアプリをApache2で動かしたときの挙動を確認(スクリプト内(.py)のモジュールレベル変数について)

概要 FlaskアプリをApache2で動かしたとき、Flaskアプリスクリプト内モジュールレベル変数は、ずっと保持されることを確認できた。 背景と目的 FlaskアプリをFlaskの開発用サーバ(localhost:5000)で動かしたときは、Flaskアプリを構成しているPythonスクリプ…

chromedriverもアップデート

ランキング参加中DIY Chromeをメジャーアップデートしたので、Chromeの自動操作系で使用しているchromedriverもアップデートせねばと思い、方法をweb上を調べると、 pip install chromedriver-binary==バージョン名 と書いてあるので、この通りやったところ…

PythonアプリからブラウザアプリへMQTTで送信

概要 PythonアプリからブラウザアプリへMQTTでメッセージ送信するための簡単なテストプログラムを作成し、動作確認した。 背景と目的 Raspberry Pi上のPythonアプリ側から、そのUI系として用いているクライアントサイドWebアプリ(以下、ブラウザアプリ)に対…

PostgreSQLクエリコマンド覚書

コメント -- ハイフンを2つ データベース一覧 select * from pg_database; テーブル名一覧 select relname as TABLE_NAME from pg_stat_user_tables; テーブル内のカラム一覧 select * from information_schema.columns where table_catalog='データベース名…

3Dプリンタで作ったPLA樹脂部品同士を接着剤で接着してみる

概要 3Dプリンタで作ったPLA樹脂部品同士を接着剤による接着を試し、接着できることを確認した。 背景と目的 3Dプリンタは、高さ方向(z軸方向)の造形に時間がかかる。なので、箱型のモノを作ろうとした場合、箱の形をまるまるよりも、箱の各面を分割した板状…

とにかくCSVを可視化する

# coding: utf-8 """ とにかくCSVを可視化する """ import json import codecs import numpy import datetime import os from matplotlib import pyplot as plt import pandas as pd MYDIR = os.path.dirname(__file__) def visualize(df, options={}): """ …

Raspberry Piの初起動時にやることメモ

概要 Raspberry Piの初起動時にやることの自分用メモ 背景と目的 Raspberry Piの初起動時にやることをよく忘れるので自分用にメモする。 詳細 実施条件 Raspberry Pi 4 Model B 2020-02-05-raspbian-buster-full.img 起動前 sshを有効化 /boot直下に、sshと…

Visual Studio Codeの拡張機能Markdown PDFで、改ページ位置を指定する

概要 拡張機能Markdown PDFで、改ページ位置を指定する方法が分かった。 ランキング参加中DIY 背景と目的 VS Codeで書いたMarkdownをPDFにしようとしたら、段落の途中で改ページされ読みにくい文書が出力されてしまったので、任意の位置で改ページされるよう…

アルミホイルによるシールドについて

ランキング参加中DIY 概要 アルミホイルによるシールドについて、効果を確認した。 背景と目的 ある事情でマイクアンプを作っていたところ、いわゆるハムノイズが気になったので、低減させるためのシールドを検討した際に調べた記録を残しておく。 詳細 1.オ…

関数作成時に気を付けること

概要 powershellで関数作成時にハマったのでメモ。関数の戻り値は、その関数内の処理において標準出力に出力されたものすべてという点が重要なので、その点を意識して作らないといけない。 背景と目的 先日、powershellで関数を作成していたところ、意図しな…

PowerShellによるHTTP Serverで、jsonデータのPOSTリクエストを引き受ける

概要 PowerShellによるHTTP Serverで、jsonデータのPOSTリクエストを引き受ける方法をメモした。 背景と目的 前回、PowerShellによるHTTP Serverの建て方がわかった。今回は、POSTメソッドのボディを読み取る。 詳細 1.参考 参考1 参考2 参考3 2.実装 各参考…