フォトリフレクタ(LBR-127HLD)の動作調査の動画です。
回路図は次のようになっています。(電源が5Vになっていますが、動画では4Vくらいです。)

フォトリフレクタは赤外線LEDとフォトトランジスタの組み合わせ。
フォトリフレクタ(LBR-127HLD)の動作調査の動画です。
回路図は次のようになっています。(電源が5Vになっていますが、動画では4Vくらいです。)

フォトリフレクタは赤外線LEDとフォトトランジスタの組み合わせ。
10進ジョンソン・カウンタ(TC4017BP)の紹介動画です。
単純にクロックで1つずつピンがHになるICです。
MacのOSをBig Surにアップグレードしたら回路図エディタのqtbsch3vが動かなくなったので、KiCadをダウンロードして使い始めた。
参考書を買おうと思ってAmazonを漁っていたら、過去に買っていた。
Unityの部品集みたいなAssetが半額セール(2020/10/11現在、終わってます)やってたので買ってみた。
1つは「Gaia 2 – Terrain & Scene Generator」というやつで、地形を生成する機能がある。
https://assetstore.unity.com/packages/tools/terrain/gaia-2-terrain-scene-generator-42618
もう1つは「Quirky Series – Animals Mega Pack」というやつで、かわいい動物のモデル&アニメーションのセット。
https://assetstore.unity.com/packages/3d/characters/animals/quirky-series-animals-mega-pack-137259
どちらもまだ使えていない。
ML-Agentsの書籍では次のような環境だった。
| Unity | 2018.04.27f1(LTS) |
| ml-agents | Release 3 |
せっかくなので新しいUnityと最新のml-agentsで動かしてみたいと思って試してみた。
| Unity | 2019.4.11f1(LTS) |
| ml-agents | Release 7 |
動いた。
| Unity | 2020.1.6f1 |
| ml-agents | Release 7 |
これも動いた。
Unityにml-agentsという機械学習のライブラリがあるのは何となく知っていたけど、LEGOの件でUnityをいじれるようになったので、Unityの動画を見ながら試してみた。
一緒に同書籍のKindle版(PDF版の方が良かったかも…)を購入してまずは環境をセットアップした。しかし、いろいろ書籍と動画で違うところがあって、動画を元に作業を行った。(Unityの操作とかは動画の方がわかりやすいし。)
Anacondaをインストールするのに、他のPython環境用にpyenvを使っていたので、pyenvとAnacondaの共存したいと思って調べたら、pyenvのプラグインとして、pyenv-virtualenvというツールがあるのがわかった。
ここでは、Anacondaのインストールとcondaコマンドでの仮想Python環境を整えるまでの操作を記録しておきます。
pyenv-virtualenvはbrewでインストール出来る。(私はpyenv-virtualenvのインストール前にsystemをカレントにして、それ以外のPythonをuninstallしておきました。)
brew update brew install pyenv-virtualenv
次にpyenvからanaconda3-2020.02をインストール。
pyenv install --list | grep anaconda3 pyenv install anaconda3-2020.02
そしてAnacondaを有効にします。
pyenv global anaconda3-2020.02
condaコマンドでml-agents用の仮想環境をcreate & activateをしますが、activateはpyenvから行います。
conda create -n ml-agents python=3.7 pyenv activate anaconda3-2020.02/envs/ml-agents
動画でml-agentsライブラリのインストールをpipコマンドで行っていますが、私の環境では2回目のpip installでエラーが出ました。調べたら –use-feature=2020-resolver オプションを付ければOKとの事で、次のようになりました。特にエラーになったpip installの後で –use-feature のオプションを付けたpip installコマンドを再度実行して問題ありませんでした。pipコマンドが最新だと問題ないのかも知れないです。
pip install -e ./ml-agents-envs pip install --use-feature=2020-resolver -e ./ml-agents
学習の定義ファイルが動画を止めて入力するのが面倒なので、上に書籍のサポートページへのリンクを貼っておいたので、そこからダウンロードしてそれを使う(動画と同じかどうかはわかりませんので、確認してから使ってください)といいと思います。私は動画を見て入力しましたが、フォーマットとか知らなかったので、タブでインデントを付けてエラーになったり、タイプミスしてエラーになったりで面倒でした。
YouTubeで「UnityでLEGO®の世界に入り込もう! – Unityステーション」という動画を見つけて一通り見た後、再度動画を見ながらUnityをインストールして試すことが出来た。
なかなか、Unityを試せなかったけど、動画を見ながらチュートリアルをやって最後まで行けた。
チュートリアルの最後でWeb上に自分の作ったゲームをアップロード出来る。
↓これが私がアップロードしたゲーム(チュートリアルと同じものです)https://connect.unity.com/mg/lego/untitled-26815
マイクロスイッチのチャタリング対策をしたので、その効果を12ステージバイナリカウンタ(74HC4040)で見る。
12ステージバイナリカウンタはパルス入力(の電圧が下がるところ)をカウントして12ビットの2進数で出力する汎用ロジックIC(74HC4040)。
その12ビットの出力ピン(全部つけても大変なので8ビット分のみ)にLEDをつけて変化を見る。

最初はチャタリング対策したスイッチからパルス(スイッチのON/OFF)を入力し、正しい動き(1つづつカウントアップされる)を確認します。
次にチャタリング対策をしないスイッチからパルスを入力すると、チャタリングにより不特定のパルスが入力されてカウントが1つづつカウントアップされない。
最後に再度チャタリング対策したスイッチからパルスを入力すると正しい動きになります。
マイクロスイッチを使うにあたって、チャタリング対策をしたいと思って調べた。
見つかったのはこのページ(「RSラッチによる方法」部分)
「スイッチのチャタリングの概要。チャタリングを防止する方法|マルツオンライン」
マイクロスイッチの構造からON-ONのトグルスイッチとみなせると思ったので、そのまま74HC00を使ってブレッドボード上に組んでみた。


赤いLEDが出力Q。黄色のLEDが出力/Q。
動画
普通にLEDのON/OFFくらいじゃわからない。
文字の縁取りをしたくて調べたらあったのでBookmark。
【Pixelmatorの使い方】文字を縁取りして、目立たせる方法。