記事
組込み・制御・信号処理・FPGA・産業AI ── 動くコードと実測で確かめた記録。
- ロボットの減速機をひも解く(1/4) ―― 関節の中身と、0.009次の罠 ロボットの腕は、外から見ればただの棒です。けれど関節の中には減速機があり、減速機の中には歯車があり、歯車を支える軸受があり、軸受の中には転動体が並んでいます。入れ子になった、数えられる部品の集まりです。 pythonロボットメカトロニクス予知保全信号処理
- ロボットの減速機をひも解く(2/4) ―― 入口しか見えない箱を、どう覗くか ロボットの関節は、入口しか見えない箱だ。角度同期平均と次数分析で軸受起因と歯車起因を分け、電流という覗き窓で見える範囲を測り、隣り合う0.009次を分けるのに何が要るかを数える。 pythonロボットメカトロニクス予知保全信号処理
- ロボットの減速機をひも解く(3/4) ―― 測る前の予測を、公開データに当てる 構造だけから立てた次数の予測は、本当に当たるのか。歯数が全て公開された歯車故障データに振動と電流の両方で予測を当て、位置は当たるが大きさは当たらないという結果を確かめる。 pythonロボットメカトロニクス予知保全信号処理
- ロボットの減速機をひも解く(4/4) ―― 警報の線は、どこに引けるのか 劣化が進むとき、警報の線はどこに引けるのか。XJTU-SY の軸受加速寿命試験データで5本を破壊まで追い、全数に通る絶対閾値は300本の候補中0本、ベースライン比なら線が引けることを確かめる。 pythonロボットメカトロニクス予知保全信号処理
- Modbus をPCの中で動かす ―― 産業用通信をハードなしで学ぶ(1/5) 工場で動いている装置同士は、どうやって会話しているのか。 modbuspython産業用通信組み込みネットワーク
- CANopen 前編 ―― デバイスが自分の辞書を持つ(2/5) デバイスが自分で辞書を持つとどうなるか。仮想の CAN バスを Python の中に立て、マスタとサーボの2ノードで NMT・SDO・PDO・SYNC を通し、番号に名前と型が付く仕組みを確かめる。 canopencanpython産業用通信組み込み
- CANopen 後編 ―― 仮想サーボを回す(3/5) CANopen の配管に中身を流す。CiA 402 の状態遷移どおりに仮想サーボを起動し、位置指令を与えて追従カーブを描かせる。実物のモータも CAN インタフェースも使わず、PC の中だけで。 canopenpythonサーボ産業用通信組み込み
- OPC UA 前編 ―― 情報モデルとサーバを立てる(4/5) Modbus は数字の列、CANopen は事前に配る EDS。OPC UA はサーバに繋いで何を持っているかを聞けば答えが返る。情報モデルを設計し、ハードウェアなしでサーバを立てて確かめる。 opcuapython産業用通信iotasyncio
- OPC UA 後編 ―― 3つを1つのゲートウェイに合流させる(5/5) Modbus TCP の機器、CANopen の仮想サーボ、OPC UA サーバの3つを1台のゲートウェイで束ねる。OPC UA から書いた目標位置が CAN の RPDO まで貫通し、サーボが動くまでを繋ぐ。 opcuamodbuscanopenpythoniot
- 産業機械をパソコンの中でひも解く・多関節ロボット ―― まっすぐ動かしたいだけなのに、腕が自分を放り出す ツールの先を、ゆっくり、まっすぐ動かしたいだけでした。速さは秒速12センチで、人が歩くよりずっと遅い。それなのに、腕は自分を放り出しました。 pythonロボットシミュレーション数値計算線形代数
- 産業機械をパソコンの中でひも解く・チップマウンタ ―― 到着した、と機械は言う。まだ揺れているのに 部品を吸い上げて、高速で運んで、基板に置く。それを毎時何千回も繰り返す機械です。速く動かしたい。ところが速く動かすほど、止まったあとにノズルの先端が揺れ続けて、部品が斜めに着地します。 pythonシミュレーション制御信号処理メカトロニクス
- 産業機械をパソコンの中でひも解く・卵パッカー ―― 平行リンクが一瞬だけ、どちらに進むか決められなくなる 卵を10個、パックに並べる機械の話です。つまんで、水平を保ったまま運んで、そっと置く。ただそれだけの動きの中に、機構が「どちらに進むか決められなくなる」一瞬があります。 pythonシミュレーションロボット数値計算メカトロニクス
- 産業機械をパソコンの中でひも解く・XYステージ ―― まっすぐな円が、四か所だけ内側にへこむ まっすぐな円を、機械になぞらせます。ところが軌跡は真円になりません。四か所、それも上下と左右のちょうど頂点だけ、内側にかくっとへこみます。 pythonシミュレーション制御数値計算メカトロニクス
- 産業機械をパソコンの中でひも解く・ロータリー充填機(後編)―― 実機が無いうちに、異常監視はどこまで見えるか 前編で組んだロータリー充填機の物理シミュレーションを使い、実機が無いうちに異常監視をどこまで作り込めるかを検証する後編。振動とエンベロープ解析で不具合の兆候を追う。 pythonシミュレーション信号処理異常検知メカトロニクス
- 産業機械をパソコンの中でひも解く・ロータリー充填機(前編)―― 気づかないうちに、液の揺れと拍子が合っていた ロータリー充填機を物理から解いてパソコンの中で動かす前編。何気ない設計のはずが、液の揺れと機械のタクトがいつの間にか共振していた――その気づきまでを追う。 pythonシミュレーションデジタルツインメカトロニクス制御
- 詰め込み選手権 ―― ポリオミノを長方形に敷き詰める、四つのアルゴリズムの勝負 テトリスのようにポリオミノを長方形へすき間なく詰める――板金や生地取りにも通じる問題を、四つのアルゴリズムで解いて敷き詰め効率と計算時間を比べた記録。 pythonアルゴリズム最適化組合せ最適化遺伝的アルゴリズム
- ジョブショップ・スケジューリング選手権 ―― 貪欲・焼きなまし・遺伝的アルゴリズム・厳密解を同じ問題で競わせる どの仕事をどの設備でどの順に流すか――工場のジョブショップ・スケジューリングを、貪欲法・焼きなまし・遺伝的アルゴリズム・厳密解の四つで同じ問題に当て、解の質と計算時間を比べる。 pythonアルゴリズム最適化スケジューリング遺伝的アルゴリズム
- 画像認識の前に画像を整える ―― 前処理の三つの型と、点処理を仮想FPGAで確かめる 画像認識の前に画像を整える前処理を三つの型に分けて解説するシリーズ第1回。明るさやノイズのばらつきを均す「点処理」を、LUTとして仮想FPGA上で確かめる。 画像処理fpgaverilog組み込みpython
- 画像認識の前処理・近傍の型 ―― ガウシアンをラインバッファと固定小数点で確かめる 画像前処理シリーズ第2回・近傍処理。ある画素の出力を周囲の画素とまとめて決めるガウシアンぼかしを、ラインバッファと固定小数点で仮想FPGAに実装して確かめる。 画像処理fpgaverilog組み込みpython
- 画像認識の前処理・幾何の型 ―― アフィン変換をバイリニアと固定小数点で確かめる 画像前処理シリーズ第3回・幾何変換。拡大縮小や回転のアフィン変換を、バイリニア補間と固定小数点で仮想FPGAに載せ、点・近傍に続く三つ目の型として確かめる。 画像処理fpgaverilog組み込みpython
- ラダーをアセンブラとして読む ―― スタックマシンとスキャン、速くしても縮まない I/O PLCのラダー図を、スタックマシン向けアセンブラとして読み解く。スキャン方式の仕組みと、処理を速くしてもI/O応答が縮まない理由を、ソフト側の視点から整理する。 plc組み込みpythonアセンブリ自動化
- ADC の較正を、どの段で止めるか ―― オフセット・ゲイン・非線形・温度と、0–55℃で 1mV の落としどころ センサ→アンプ→ADCの読み値をどこまで較正すれば割に合うか。オフセット・ゲイン・非線形・温度ドリフトを順に潰し、0〜55℃で1mVに収める落としどころをSPICEと実装で探る。 電子回路組み込みアナログspice計測
- ランダム分割で 70%、GroupKFold で 45% ―― CNC 工具摩耗データで見る交差検証のデータ漏えい 同じCNC工具摩耗データで、ランダム分割だと精度70%、GroupKFoldだと45%。この落差の正体は交差検証のデータ漏えい。分割の仕方が評価をどう歪めるかを、公開データで実演する。 python機械学習データ分析scikitlearn製造業
- 74LS と 74HC をつなぐと H が通らないことがある ―― ロジックICのレベルと HiZ を確かめる 74LSと74HCをつなぐとHが通らないことがある。動かない原因がソフトでもタイミングでもなく電圧レベルや出力衝突にある――ロジックICの入出力レベルとHiZを波形で確かめる。 電子回路cmosハードウェア電子工作spice
- オンとオフしかないスイッチで、モータに正弦波を届ける ―― PWM インバータを波形で確かめる 前回の FOC 編までで、コタツの温度からブラシレスモータの回転まで、PID の話は一通りつながりました。ただ、ひとつだけ理想化したまま先送りにしてきたことがあります。電圧です。 制御モータpythonシミュレーションインバータ
- モータの電流でベアリングの故障は見えるのか ―― 実損傷の公開データで振動と比べる モータの電流だけでベアリングの故障は見えるのか。Paderborn大学の実損傷公開データ(CC BY-NC 4.0)で、電流ベースの診断を定番の振動ベースと同じ土俵で比べ、どこまで迫れるかを測る。 python信号処理異常検知機械学習製造業
- ベアリング診断の「精度 99%」はどこから来るのか ―― 定番データセットで確かめる ベアリング診断の「精度99%」はどこから来るのか。CWRU Bearing Data Centerの実測データで、エンベロープ解析と評価の組み方によって精度がどう変わるかを検証し、数字の意味を問い直す。 python信号処理異常検知機械学習製造業
- ブラシレスモータを FOC で回す ―― 回る座標に乗ると、交流が直流に見える 前回までは、ブラシ付きの DC モータを三段のカスケードで回し、そのゲインの決め方まで見てきました。ブラシ付きは「電流を流せば、その向きにトルクが出る」が素直で、内側の電流ループがトルクをそのまま担えました。 制御モータpythonシミュレーションfoc
- サーボの Kp・Ki・Kd はどこから来るのか ―― 自動であたり、手で仕上げる サーボの三段カスケードで置いたゲインKp・Ki・Kdは、どこから来るのか。自動同定であたりを付け、手で仕上げる――電流・速度・位置の各ループのゲイン決めを、実際の数値とともにたどる。 pid制御モータpythonシミュレーション
- サーボを三段の PID で動かす ―― 位置・速度・電流のカスケードを波形で確かめる 前回は、コタツを Python で作って P → PI → PID の効き目を波形で見ました。温度は時定数が秒〜分の、ゆっくりした世界だったので、素朴な PID 一段でもちゃんと目標に届きました。 pid制御モータpythonシミュレーション
- コタツで学ぶ P / PI / PID ―― 式より波形で、制御の効き目を確かめる P・PI・PID制御を、式ではなく波形で体感する。身近なコタツの温度制御を題材に、各項を足すと応答がどう変わるか、行き過ぎ・定常偏差・振動をシミュレーションで確かめる。 pid制御python組み込みシミュレーション
- ESD は kV より 0.8ns ―― 規格の電流波形を式から起こして、基板が見る電圧を追う 前回は環境試験の全体像を「なぜ→だから」で並べ、最後に ESD(静電気放電)だけ宿題に残しました。電圧の高さよりも、放電の速さが効いてくる、という話です。ここではその中身に入ります。 esdemcハードウェア組み込みプリント基板
- 回路をテキストで宣言したら、基板が「ほぼ」組み上がった — 設計→自動配線→DRC を Python 1 本で 回路をテキストで宣言すると、基板がどこまで自動で組み上がるか。KiCadを使わずPython一本で設計→自動配線→DRCまでを通す実験。シリーズの集大成として“ほぼ”組み上がるまでを見る。 pythonpcb電子工作edaプリント基板
- 群れで迷路を解くAIに憧れて作ってみたら、一番地味な方法に完敗した 群れで迷路を解くAIに憧れて観戦画面ごと自作し、遺伝的アルゴリズムと別の2手法を同じ迷路で競わせた。一番派手な群れが一番遠回りし、「AI手法を公平に比べる難しさ」に行き着くまでの記録。 python機械学習強化学習アルゴリズム遺伝的アルゴリズム
- 電話は意外と工数を食う ― AI に受電を任せたら安いのか、市販と自作を並べて確かめる 電話が鳴るたびに、いったん手が止まります。出て、用件を聞いて、誰に回すか考えて、内容をメモして、折り返しの段取りをする。一本ずつは数分でも、積み上がると地味に効いてきます。電話は、思っているより人の工数を食う仕事です。 aivoicebotllm音声認識コスト
- 電子機器の環境試験は、なぜやるの? ―「困るでしょ」から並べ直す 電子機器を製品として世に出すとき、ソフトが思いどおりに動くだけでは足りません。振動・温度・静電気。こうした「使われる環境」に耐えられるかを、環境試験や EMC 試験で確かめます。 電子工作emc組み込みハードウェア品質管理
- 31段の壁 — PIC で「RTOS もどき」を作ると、普通の CPU と何が違うのか PIC18で最小の協調スケジューラ(RTOSもどき)を書き、止めたところからタスクを再開させる。31段しかないハードリターンスタックの制約が、普通のCPUと何を変えるのかを掘り下げる。 picアセンブリrtos組み込み電子工作
- 液晶の「黒」は、なぜ少し灰色なのか — local dimming の効果と副作用を自作シミュレータで描く 液晶の「黒」がわずかに灰色に浮くのはなぜか。バックライトのlocal dimmingが黒の締まりとハロー(副作用)にどう効くかを、自作シミュレータで描いて確かめる。 python電子工作ディスプレイ画像処理led
- 結局、どれをどこに入れるのか — EMI 対策部品の羅針盤 (3) 選定フロー編 EMI対策部品の羅針盤シリーズ最終回。コンデンサ・フェライトビーズ・π型フィルタを「結局どれをどこに入れるのか」、周波数帯と回路条件から選ぶ実践フローにまとめる。 python電子工作emc回路設計ノイズ対策
- チップビーズは、ノイズを熱にして捨てる — EMI 対策部品の羅針盤 (2) チップビーズ編 EMI 対策部品の羅針盤、第 2 本はチップビーズ(フェライトビーズ)です。 python電子工作emc回路設計ノイズ対策
- 「0.1μF」はいつまでコンデンサか — EMI 対策部品の羅針盤 (1) コンデンサ編 「三端子コンデンサは ESL が低いからいいよ」「ノイズ対策にビーズを入れておいた」— 回路設計の現場で、先輩からこういう言葉を聞いたことはありませんか。 python電子工作emc回路設計ノイズ対策
- マイコン出力の R は、なぜ「直近」に置くのか — 1D 伝送線シミュで反射を観察する マイコンの出力ピンと、その先のセンサや LED の間に、20Ω や 33Ω くらいの直列抵抗を入れている回路図を見たことはありますか。 pcbpythonsignalintegrity電子工作マイコン
- 隣の信号は本当に \"盗み聞き\" するのか — PCB のクロストークと GND ガードを Python で見てみる 隣り合う配線は本当に信号を“盗み聞き”するのか。PCBのクロストークと、GNDガード(ガードトレース/ビアフェンス)の効き目を電磁界シミュレーションでPythonから可視化し、現場の言い伝えを確かめる。 pcbpythonsignalintegrity電子工作fdtd
- 90度の角を曲がると電子は飛び出すのか — PCB の都市伝説を Python で確かめてみる 「PCBの配線を90度で曲げると角で電子が飛び出す(信号が乱れる)」という定番の言い伝えは本当か。電磁界をPythonでシミュレートして、90度・45度・曲線の角を実際に比べてみる。 pcbpythonsignalintegrity電子工作fdtd
- wav を入れたらカントリーブルース風の譜面が出てくる遊び道具を作った — mojo-hand 日本ではあまり馴染みのない方もいらっしゃると思うので、最初に カントリーブルース と Travis picking について軽く触れさせてください。 python音楽ギター楽譜LLM
- この春、Claude Code の脇に置く小さな道具を 3 つ作りました — 安価な LLM へ読解・レビュー・チェックを逃がす 今年の春、私は AI コーディングを 日常の作業ライン に組み込みました。具体的には Claude Code を毎日触るようになり、コードレビューも、設計のたたき台も、長い原稿の点検も、まずはここに通すようになりました。 mcpllmopenrouterclipython
- 自作PCBオートルータをトーナメントにしたら、最強が盤ごとに入れ替わった — Python で arena をつくる KiCadを使わずPythonで書いた自作PCBオートルータに複数の戦略を持たせ、盤ごとにトーナメントで競わせる。最強手法が盤面によって入れ替わる様子と、そのarenaの作り方を追う。 pythonpcbアルゴリズムベンチマーク電子工作
- Wi-Fi ルーター裏のアンテナはなぜ「ただの板」なのか — Python でフリンジ電界とインピーダンスの谷を覗く 家のルーターの裏ぶたを開けたとき、私は「あれ?」と声が出ました。 pythonアンテナ電子回路wifi無線
- 真空管はなぜ歪みが心地よいのか — PySpice で見て、トランジスタとオペアンプで再現を試す 真空管アンプの歪みはなぜ心地よく聞こえるのか。PySpiceで真空管の伝達特性と高調波を見て、その“気持ちよさ”をトランジスタやオペアンプでどこまで再現できるかを試す。 spicepythonギター電子回路音響
- ρ=0.998 の壁 — 百円台の 8-bit マイコンに 2D マハラノビス距離を乗せて、ベアリング劣化を聴く 百円台の8-bit PICに2次元マハラノビス距離を実装し、ベアリング劣化の兆候を捉えられるか。NASA IMS Bearing Dataとシミュレーションで、非力なマイコンでの異常検知の限界を探る。 python組み込みPIC異常検知信号処理
- 「圏外だから衛星」と決める前に — 山間部 IoT のコストを、請求書に載らない分まで数えてみた 山間部IoTで「圏外だから衛星通信」と決める前に、中継ノードの保守費や可視率まで含めた総コストを試算する。請求書に載らない費用まで数えて、衛星と地上中継の分岐点を探る設計論。 iotlpwawisun衛星通信組み込み
- 実機なしの STM32 で三相電力、続き — 不平衡・低力率で崩れるもの、崩れないもの(2電力計法) 前回の記事はこちらです。仕掛け(Unicorn で STM32 を動かし、ADC の番地読み出しを Python で横取りする)はそのまま使い回しています。 pythonstm32組み込み電子工作電力計測
- 実機を使わずに STM32 を動かして、三相電力を測ってみる — Python の中だけで(2電力計法) STM32のプログラムは実機ボードを買わなくても、CPUエミュレータUnicornでPCの中を1命令ずつ動かせる。エミュレート環境で三相電力を2電力計法で測るところまでを組む。 pythonstm32組み込み電子工作電力計測
- KiCad を使わずに、Python だけで基板を“配線”してみる — 素朴な迷路法で プリント基板の設計はGUIツールが定番だが、Pythonのコードだけでもガーバー/ドリル一式を作れる。pcbflowを使い、自作の素朴な迷路法(A*)で基板をどこまで“配線”できるか試す第1回。 python電子工作pcbアルゴリズムプリント基板
- 同じ RTL を 3 回シミュレートする — Yosys と iverilog で、合成と配置配線で剥がれていくもの ひとつのRTLをRTL/合成後/配置配線後(セル実遅延)の三段でシミュレートすると、抽象が一枚ずつ剥がれていく。iverilog・yosys・nextpnrのOSSだけで、合成と配置配線で何が変わるかを観察する。 fpgaverilogyosysシミュレーション電子回路
- FFT が汚れる前に — AD コンバータの手前で、4 次 LPF を E12 と E24 でどう組むか 加速度センサの振動をFFTにかける前に、ADコンバータの手前へ入れる4次ローパスをE12/E24系列の現実の部品でどう組むか。PySpiceで特性とばらつきを見ながら設計する。 電子回路spicepython信号処理組み込み
- 「これ、効いてるんでしょうか」— 産業用センシング基板の保護回路で、ずっと答えが出ない話 先に、いちばん言いにくいことから書きます。産業用の基板に保護回路を入れるとき、私はいまでも「これ、本当に効いてるんでしょうか」と思いながら部品を置いています。二十年やってきても、そこは変わりません。 電子回路emc組み込みアナログハードウェア
- Z80(ゼッパチ)を4個つないで円周率を求めてみた — 並列で速くなる計算と、何台つないでも速くならない計算 1970年代の8ビットCPU Z80を4個つないで円周率を計算。並列で速くなる計算と、何台つないでも速くならない計算の境目を、実測で確かめる。 z80並列計算数値計算sdccアセンブリ
- ゼッパチを、いまの机に蘇らせる — Z80 で C の printf と二分探索を、電源オンの 0x0000 から動かす 訂正(2026-05-19):公開後、コメントで的確なご指摘を4点いただき、修正しました。ご指摘くださった方に感謝します。 z80sdccc言語レトロコンピュータアセンブリ
- ngspice の壁、sudo 無しで越えた — PySpice で本物の Bode 線図が出るまで PySpiceはネットリスト生成まで動くのに、肝心のシミュレーションがlibngspice.so不在で止まる。管理者権限のない環境で、sudoに頼らず本物のBode線図を出すまでの回避手順をまとめる。 pythonspicengspice電子回路conda
- 回路図、Python で書けるのか? — 現場の電子屋が schemdraw / skidl / PySpice を本気で試した 回路図を一枚起こすたびに、GUI を立ち上げて、部品ライブラリを探して、シンボルを並べて、配線して、番号を振って……という儀式を、私は 20 年やってきました。 python電子回路spiceschemdrawものづくり