Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
数百円から始めるRuby電子工作
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Tarosa
July 18, 2026
Programming
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
数百円から始めるRuby電子工作
関西Ruby会議09のLT資料です。
Tarosa
July 18, 2026
More Decks by Tarosa
See All by Tarosa
290円のマイコンでRubyを動かす ― UIAPrubyと缶サットへの挑戦
tarosay
0
49
UIAPduinoの説明
tarosay
0
35
AIで宇宙甲子園 缶サット部門 近畿大会のテーマソングを作る
tarosay
0
51
mrubyとWakayama.rb ~mrubyと共に歩んだ10年~
tarosay
0
170
【THETA撮影会 in 大阪】建築・照明デザイナーとエンジニアのための視環境設計 #4
tarosay
0
270
評価画像変換の簡単な説明
tarosay
0
230
建築・照明デザイナーとエンジニアのための視環境設計
tarosay
0
300
模擬人工衛星DangoSatプロジェクト
tarosay
0
320
全方位色彩解析ソフト REALAPS Omni Colorのマニュアル
tarosay
0
220
Other Decks in Programming
See All in Programming
自作Discord音声botをLambda MicroVMsに移行した話 / Migrating My Discord Voice Bot to Lambda MicroVMs
akihisaikeda
1
310
PyConTW 2026 - AI Coding 不只是工具升級, 區域醫院醫療資訊系統協作開發與資訊團隊轉型實踐
cclai999
0
250
AI Augmentation Techniques with Liberty
ivargrimstad
1
440
ActionController meets Protocol Buffers
sorah
1
800
AI時代のFlutter品質設計 — アプリ品質を守るQuality Layers
omatty198
0
370
SODA - FACT BOOK(JP)
sodainc
1
40k
社内AIエージェント「Askワンバン」における コストチューニングの取り組み
t0yohei
0
170
Materialが消えた日 〜真っ白なFlutterキャンバスにRenderObjectで絵を描く〜
umigishiaoi
0
160
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
300
Performance Optimization With LLMs
xleitix
0
250
作れるエンジニアから、価値を届けるエンジニアへ
ryunakayama
1
250
Web Framework Benchmark Battle 2026, Any%
a_matsuda
3
3.2k
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
57
14k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
530
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
4
1.2k
Testing 201, or: Great Expectations
jmmastey
46
8.4k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
630
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
Paper Plane
katiecoart
PRO
6
55k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.7k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Building Applications with DynamoDB
mza
96
7.3k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
400
Transcript
関西Ruby会議09 Lightning Talk 数百円から始める Ruby電子工作 UIAPruby — ブラウザだけで完結する マイコン ×
Ruby 環境 たろサ / Wakayama.rb(和歌山発Rubyコミュニティ) 1
Rubyで電子工作、始めようとすると… ボードが高い 入門ボードでも数千円。 気軽には壊せない 環境構築が重い クロスコンパイラや 専用ツールの準備が必要 mrubyはビルドが必要 Ruby +
rake が前提。 Arduino IDE だけでは 完結しない 「やってみたい」の前に、ハードルが 3つ。 2
UIAPruby — ハードは約600円 ¥290 UIAPduino 本体 CH32V003(RISC-V)搭載 + ¥300 microSDカードアダプタ(目安)
Flash 16KB / RAM 2KB 「え、それでRubyが?」 → 動きます(工夫は後ほど) あとは Chrome / Edge だけ • インストール不要 • クラウド不要 • コンパイルも転送も • すべてブラウザの中で完結 3
大事なことを、先に言っておきます Official Party で 15名様 にプレゼント! 関西Ruby会議09 特別版(左:裏面 microSD /
右:表面) 7/18(土)19:00〜 Official Party THE CALENDAR(大津駅前)にて ただし、条件がひとつ PicoRubyKaigi 2026 Assemble (10/31(土)浅草橋)に、UIAPruby を 使った作品を出してください! トーク / ショーケース 応募〆切:8/31(月) 4
しくみ — 書いて、押して、挿すだけ 1. Rubyを書く ブラウザのエディタで。 サンプルもワンクリック → 2. ブラウザ内
コンパイル @ruby/prism (WASM) で AST解析 → .urb バイトコードへ変換 → 3. WebHIDで SDへ転送 USBを挿して ワンクリックで書き込み → 4. TinyVMが実行 main.urb なら 電源ONで自動実行 マイコン上で Ruby VM は動かさない — 実行するのは軽量バイトコード 5
mruby の rake を、ブラウザに移した mruby のやり方 • mrbgems を選んで構成を書く •
rake でビルド(Ruby 必須) • クロスコンパイラ環境も PC に用意 → Arduino IDE だけでは完結しない UIAPruby のやり方 • Webでコンポーネントを選ぶだけ • 必要な機能だけ入りの単一 .ino が生成 • Arduino IDE でそのまま書き込み → ビルド環境の構築ゼロ コンポーネント選択 = mrbgems 相当。 ブラウザが rake になる。 6
ふつうの Ruby 文法で書ける # LED を 0.2 秒ごとに点滅 led =
GPIO.new(2, GPIO::OUT) loop do led.on sleep(0.2) led.off sleep(0.2) end コンパイル後はわずか数十バイトの .urb に 使える機能(コンポーネント) GPIO / ボタン Tone(ブザー) PWM(モーター) ADC(アナログ) 超音波 HC-SR04 I2C 通信 乱数 rand 小数(Q16.8) 仮想メモリの実装 $count 電源を切っても消えない変数(SDに永続保存) 7
例えば、こんなものが作れます 作例 — ラッキーおみくじマシーン 超音波センサが目、サーボモーターが針 — すべて UIAPruby で動作 使うのは
4 コンポーネント 超音波 Us(目)/ PWMサーボ Pw(針) 乱数 Rn(運勢)/ 小数演算 Q1 遊び方は、一礼するだけ おみくじマシーンにお辞儀をすると start 針が 2 往復したあと、ランダムな角度で 止まって「今日の運勢」を指します 実機あります。休憩・懇親会にぜひ遊んでください! 8
Flash 16KB に詰め込む工夫 Flash 使用量(BASE構成) 12,816 / 16,384 bytes(78%) Q16.8
固定小数点 小数演算を int32 で。 1.0 = 256。FPU なしでも g = 0.1 * 0.5 が動く ラムダはインライン 展開 コンパイル時に呼び出し先へ 展開 — 実行時コストゼロ、 追加 Flash ゼロ コンポーネント選択 式 使う機能だけを組み込み。 Tone +1008B、ADC +328B と 数百バイト単位で加算 VM を丸ごと載せるのではなく、「Ruby の最大の魅力である書き心地」だけを持ち込む 9
今日から試せます tarosay.github.io/uiap-hid-web/uiapruby.html 「UIAPruby」で検索でもたどり着けます デバイス接続は Chrome / Edge のみ WebHID API
を使用するため。 Firefox / Safari は非対応 コンパイルとダウンロードは どのブラウザでも OK .ino / .urb の生成・保存は WebHID 非対応でも動きます 10
数百円のマイコン + ブラウザで、Rubyがそのまま動く rake の役割はブラウザへ — 環境構築ゼロ Wakayama.rb 発、GR-CITRUS に続く「二つ目の扉」
ご清聴ありがとうございました たろサ / Wakayama.rb 11