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で人工透析装置のIoT化
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
higashihirohito
September 18, 2023
Programming
92
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rubyで人工透析装置のIoT化
松江Ruby kaigi 10 での発表資料
higashihirohito
September 18, 2023
More Decks by higashihirohito
See All by higashihirohito
mrubyc_kaigi03.pdf
higashihirohito
0
140
Other Decks in Programming
See All in Programming
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
Long Living Tokens, Die, Die, Die! (or: The One Ring is Banned in Modern)
sylph01
0
300
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
130
AmebaブログはKMPから卒業します
kmars0605
0
190
contenteditable と日本語入力に向き合う
colorful12
0
200
SREの越境 / SRE Collaboration
y0hgi
2
310
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
590
作れる、でも消せるか?──安全に「枯らして消す」機能削除術 / Drain, Then Delete
chobishiba
2
640
R8 の設定見直しでアプリサイズ削減
andpad
0
220
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
1
430
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
610
Odyssey Design
rkendrick25
PRO
2
870
A designer walks into a library…
pauljervisheath
211
25k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.6k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
HDC tutorial
michielstock
2
960
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
BBQ
matthewcrist
90
10k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
Transcript
Rubyで人工透析装置のIoT化 島根県立中央病院の事例 2023/9/16 松江Ruby会議 10 ITOC 東 裕人
自己紹介 • しまねソフト研究開発センター ITOC • 東裕人 • mruby/c 開発者 •
組込向けAPフレームワーク Alone 開発者 今日は、ITOCじゃない仕事の話します
透析(血液透析) • うまく働かなくなった腎臓の代わりに 血液を浄化する治療法 • 血液をいったん体外に出し、 余分な水分・塩 分・老廃物を取り除き、 きれいになった血液を 再び体内に戻すという治療を、通常は週3日、
1回数時間かけて行う。
透析(血液透析) 島根県立中央病院、東レメディカル 各ウェブページより引用
解決したい問題点とその方法 • ミスの低減 • 医療従事者の負担軽減 • 電子カルテシステムにある治療情報を 透析装置に伝える • 透析治療中の情報を自動的にロギングし
電子カルテシステムへ反映させる
全体アーキテクチャ 電子カルテ システム 管理PC 通信装置 透析装置 WiFi * 1 1
1 RJ45 この「通信装置」の はなしです
ハードウェア • 組込用ワンボードマイコン
ハードウェア • 組込用ワンボードマイコン • みんな大好き
ラズパイ • いろんなリソースがそろっているので、 開発が楽すぎる! • その分運用コストが高い(ようだ) – 結構壊れるとか – 起動しなくなるとか
ラズパイ • 院内WiFi – 接続にはクライアント認証が必要 – 電子証明書を使う – ほとんどの WiFi
モジュールには、その機能なし
Rubyの利用 • 通信装置(ラズパイ)で行う 全てのタスクをRubyで記述 – 透析装置との通信 – 管理用PCとの通信 – 受信データの解析、文字コード変換
– ラズパイに追加したプッシュボタンの押下 • フレームワークにAlone採用
レイヤー アプリケーションタスク Alone フレームワーク Ruby Linux OS Hardware
Aloneフレームワーク • 常駐 • 初期パラメータファイル読み込み • アプリケーションの稼働ログ • イベントドリブン –
管理用PCから 透析装置から 自分のタイマー • 異常な通信内容などに、めっぽう強い
Aloneフレームワーク • イベント例 タイマーイベント @timer1 = Timer.periodic( @config[:dialyzer_interval] ) @timer1.run {
dialyzer_read_status() }
運用状況
運用状況 • 24台 運用 • 約2年間 • 故障1台 – チューブから液漏れして、 どばどばラズパイにかかった(らしい)
まとめ • Rubyは、組込システムで安定して使える。 • Rubyは、医療機関でも使える(使われている) • Rubyを組込に使う時は、 Aloneフレームワークをお供にすると幸せ。 • ラズパイを実用で使う場合のノウハウレポート
を、ITOCから近日公開予定!