Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ライフゲームの製作
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
mikiken
February 09, 2024
Programming
230
0
Share
ライフゲームの製作
mikiken
February 09, 2024
More Decks by mikiken
See All by mikiken
簡単な4bitCPUの作成
mikiken
0
1.3k
Webブラウザでページが表示されるまで
mikiken
0
80
Cコンパイラ自作はじめてみた
mikiken
0
260
seccamp2022 成果発表
mikiken
0
44
Other Decks in Programming
See All in Programming
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
490
Fundamentals of Software Engineering In the Age of AI
therealdanvega
2
310
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.2k
Coding as Prompting Since 2025
ragingwind
0
580
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
210
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
580
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
テレメトリーシグナルが導くパフォーマンス最適化 / Performance Optimization Driven by Telemetry Signals
seike460
PRO
2
200
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
420
Java 21/25 Virtual Threads 소개
debop
0
310
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
RailsConf 2023
tenderlove
30
1.4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
230
What's in a price? How to price your products and services
michaelherold
247
13k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
870
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
190
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
94
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
170
YesSQL, Process and Tooling at Scale
rocio
174
15k
Transcript
ライフゲームの製作 電気電子工学実験Ⅲ テーマE(b) 自由製作 mikiken (@mikikeen)
製作物の概要 • ライフゲームのシミュレーションの様子を 32×32 のマトリクスLEDに表示する
製作物の概要 • ライフゲームのシミュレーションの様子を 32×32 のマトリクスLEDに表示する
ライフゲーム (Conway’s Game of Life) • 生命の誕生 ・ 進化 ・
淘汰のプロセスを簡易な数理モデルで 再現するシミュレーションゲーム
ライフゲームのルール 誕生 : 死んでいるセルに隣接する生きたセルが3つあれば、次の世代が誕生 生存 : 生きているセルに隣接する生きたセルが2つか3つなら、次の世代でも生存 過疎 : 生きているセルに隣接する生きたセルが1つ以下なら、過疎により死滅
過密 : 生きているセルに隣接する生きたセルが4つ以上なら、過密により死滅
製作物の概要 • ライフゲームのシミュレーションの様子を 32×32 のマトリクスLEDに表示する • 初期パターンの設定 ・ シミュレーションの 開始
・ リセットはWebブラウザから行う (参考 : GitHub リポジトリ) https://github.com/mikiken/life-game
None
作った動機 • ライフゲームというシミュレーションゲームがあるらしい • 初期パターンを変えつつ、シミュレーションの様子を眺めると楽しい • マトリクスLEDにシミュレーションの様子を表示させたら イルミネーションみたいな感じで面白そう
材料 • Raspberry Pi Pico W • Arduino IDEで開発が行えるマイコン •
WiFi, Bluetooth の通信モジュールを搭載 • 32×16 ドットマトリクスLEDモジュール (2つ) • ユニバーサル基板 • エナメル線 合計 2,300円 くらい
実演します
None
簡単な構成図 同一ネットワーク (192.168.214.0/24) 操作画面を表示するためのファイルを送るよう要求 HTML, CSS, JavaScript のファイル 初期盤面パターン, 表示を開始するよう要求
表示を開始したことを表す応答 Server Client
大変だった点 (1) : はんだ付け • はんだ付け (配線がとにかく多い)
大変だった点 (2) : マトリクスLEDの制御 • 今回のモジュールの場合、光らせたい行と列の 電圧を 1 (HIGH) に設定する
• 行と列がともに1である点が光る → そのままでは、縦線や横線しか引けない そこで、ダイナミック点灯 という技術を使う
ダイナミック点灯 • 表示させたいパターンを1行ずつ、順に切り替えながら表示させる • これをめっちゃ高速にやる • 人間の目には、残像で全ての行が同時に光ってるように見える
感想など • 電光掲示板などによく使われるマトリクスLEDの制御について、 理解が深まった • 今後、配線量が多い回路を作る際は、KiCadなどで基板を設計し、 業者に発注してみたい (はんだ付けが大変すぎた)