災害時・救急医療で「音が聞こえない・声が出せない」方を孤立させないために
——視覚アラートと双方向デジタル安否・医療伝達シート
この記事の要点と4つの章のご案内
| 章構成 | 主なテーマ | 要点と確認ポイント |
|---|---|---|
| 1. 基本と全体像 | 概要と背景:災害・救急における「見えない情報の壁」をなくす | 【身近なたとえ話:停電した夜の避難所で「テレビの音を消したまま」ニュースを見る不安】 |
| 2. 現場での進め方と対策 | 具体的な対策・手順:平時にできる3つの防災・救急準備 | もし大きな地震や台風の夜、周りの人たちが防災無線やラジオの放送を聞いて一斉に別の階へ移動し始めたのに、自分だけにその音が聞こえず「何が起きているのか、どこへ行けばいいのか」がわからなかったらどれほど心細いでしょうか。また、急な激しい腹痛や胸の痛みで救急車が到着したとき、痛みで手が震えて長い文章が書けない中で、口頭で次々と質問されたらどうでしょうか。「音だけの警報を『光と振動』に変えること」と、「あらかじめ書くべきことを整理した『指差し伝達シート』を備えておくこと」は、有事の際に命と尊厳を守る大切なインフラです。 |
| 3. 関連する制度とルール | 実務確認 場面別の実務確認ポイント | 音声による119番通報が困難な方のために、「火事か救急か」をボタンで選ぶだけで指令室へつながり、GPS位置情報とチャットで状況を伝えられる公的システムが全国の消防本部で導入されています。 |
| 4. 詳しい技術仕様としくみ | 音が聞こえない方や声が出せない方が、火事や急病で119番(消防・救急)や110番(警察)を呼びたいときはどうすれば良いですか? | 過去の震災調査では、避難所での食料配布や救護案内が「呼びかけ(音声)」中心だったため、ろう者・難聴者の方が物資を受け取れなかった事例が報告されています。「耳マーク」やバンダナ、ホワイトボードの活用が鍵となります。 |
- 01 平時のうちに「NET119」と「光・振動アラート」を準備する:声を出さずに画面タップとGPSで119番通報ができる「NET119」への事前登録と、緊急地震速報のLEDフラッシュ・振動設定を済ませておきます。
- 02 避難所の連絡は「放送と同時にホワイトボードと画面へ書く」:マイク放送だけに頼らず、配給・医療・給水などの情報を必ず「時刻付きの文字・図解」で掲示し、指差し確認シートを常備します。
- 03 電波が止まっても動く「医療・アレルギー伝達カード」を持つ:大規模災害で通信が混雑しても、スマホのオフライン画面と紙のカードの両方で持病・服薬・手話や筆談希望を即座に示せる二重の備えを作ります。
1. 概要と背景:災害・救急における「見えない情報の壁」をなくす
Visual Alert & Medical Triage Card【身近なたとえ話:停電した夜の避難所で「テレビの音を消したまま」ニュースを見る不安】
もし大きな地震や台風の夜、周りの人たちが防災無線やラジオの放送を聞いて一斉に別の階へ移動し始めたのに、自分だけにその音が聞こえず「何が起きているのか、どこへ行けばいいのか」がわからなかったらどれほど心細いでしょうか。また、急な激しい腹痛や胸の痛みで救急車が到着したとき、痛みで手が震えて長い文章が書けない中で、口頭で次々と質問されたらどうでしょうか。「音だけの警報を『光と振動』に変えること」と、「あらかじめ書くべきことを整理した『指差し伝達シート』を備えておくこと」は、有事の際に命と尊厳を守る大切なインフラです。
画面タップとGPSで救急車・消防車を呼べる
音声による119番通報が困難な方のために、「火事か救急か」をボタンで選ぶだけで指令室へつながり、GPS位置情報とチャットで状況を伝えられる公的システムが全国の消防本部で導入されています。
外見からわかりにくい「聞こえの困りごと」
過去の震災調査では、避難所での食料配布や救護案内が「呼びかけ(音声)」中心だったため、ろう者・難聴者の方が物資を受け取れなかった事例が報告されています。「耳マーク」やバンダナ、ホワイトボードの活用が鍵となります。
ロック解除なしで救急隊が確認できる医療情報
iPhoneの「メディカルID」やAndroidの「緊急情報」機能に『聴覚障害あり・筆談/手話希望』『血液型・アレルギー・常用薬』を登録しておくと、本人が意識を失っていても救急隊員がロック画面から確認できます。
01. 救急現場で一番大切なのは「コミュニケーション方法」を最初に伝えること
急病や怪我で救急車が駆けつけた際、あるいは夜間の救急外来を受診した際、救急隊員や医療スタッフはマスクを着用して処置を行いながら素早く問診を進めます。このとき、患者さんが「耳が聞こえない・聞こえにくいこと」や「普段は手話・筆談・口話のどれを使っているか」が最初に伝わっていないと、お互いに意思疎通ができず貴重な時間が失われてしまいます。
そこで最も効果的なのが、診察券やマイナ保険証と一緒にすぐ出せる「救急医療伝達カード(およびスマホのロック画面表示)」です。カードの1行目に大きく「私は耳が聞こえません。マスクを外してゆっくり話すか、このカードの指差し・筆談で教えてください」と書いてあり、その下に体の部位イラスト(頭・胸・お腹など)と痛みの種類(ズキズキ・締めつけられる等)、アレルギーの有無が並んでいるだけで、処置のスピードと安心感が劇的に向上します。
02. 通信が止まる大規模災害時でも動く「オフライン支援テクノロジー」への挑戦
大地震などの発生直後は、基地局の停電や回線の混雑によってインターネット(クラウドサーバー)が一時的に使えなくなることがあります。そのため、クラウドに繋がらないと動かない翻訳アプリや通報ツールだけでは、いざという時に機能しないリスクがあります。
株式会社オープンナレッジでは、インターネット回線が構造的に遮断されたオフライン環境でも、スマートフォンや専用リストバンド単体(エッジAI)で手話や腕の筋肉の電気信号(sEMG:表面筋電図)を読み取り、周囲の端末とバケツリレー式(DTN:遅延耐性ネットワーク)でSOSや医療トリアージ情報を届ける研究開発を進めています。「いつでも・どこでも・誰ひとり取り残さない技術」を社会実装することが私たちの使命です。
2. 具体的な対策・手順:平時にできる3つの防災・救急準備
Emergency Preparedness Checklist現場で陥りやすい落とし穴と回避策
ご家庭での防災準備や、職場・自治会・病院の防災マニュアルで見落とされやすいポイントと解決策です。
| 場面・備え | 現場で陥りやすい落とし穴(NG例) | 命を守る実践的な備え(推奨策) |
|---|---|---|
| 119番・110番の通報手段 | 「何かあったらNET119を使えばいい」と思いながら、自治体の事前登録を済ませていない。 | お住まいの消防本部のWebサイトから平時のうちに「NET119」の事前登録と練習通報を完了し、ホーム画面にアイコンを置く。 |
| 停電・電池切れへの備え | 医療情報や連絡先をスマートフォンのアプリの中だけに入れており、充電が切れると何も見せられなくなる。 | スマホの「メディカルID」登録に加え、水濡れに強い紙の「緊急医療・安否カード」とお薬手帳のコピーを財布や防災袋に入れる。 |
| 職場・建物の避難誘導 | 火災報知器や館内放送が「ベルの音と音声」だけで、トイレや個室、会議室に1人でいるときに気づけない。 | 光警報装置(ストロボ点滅ライト)や社内チャット・スマートウォッチへの一斉振動アラートを併用し、避難確認担当を決めておく。 |
今日のうちに整える「防災・救急コミュニケーション 3項目チェックリスト」
達成状況:0 / 3 項目ご自身やご家族、職場の防災対策として以下の3項目が準備できているか確認してみましょう。
理解を深める確認クイズと関連コラム・豆知識
【確認クイズ】地域の避難所運営において、ろう者や難聴者の方が配給や救護の案内から取り残されないために、運営スタッフが最も心がけるべきルールはどれでしょうか?
選択肢 A:スピーカーの音量を普段の2倍にして、ゆっくり大きな声で放送する クリックして判定 →
体育館などの広い空間では、スピーカーの音量を上げると音が反響してしまい、難聴の方にとってもかえって言葉が聞き取りにくくなります。また、ろう者の方には音そのものが届きません。選択肢Bをご覧ください。
選択肢 B:「すべての音声放送は、必ず同時にホワイトボードや掲示板に時刻付きで書いて貼り出す」ことを順守する クリックして判定 →
大正解です! 音声アナウンスの内容をすべてホワイトボードに「何時何分・何のお知らせか」と文字と図で書き出すことで、ろう者・難聴者の方はもちろん、たまたまその場を離れていた人や騒音で聞き逃した人まで、避難所全員が正確に情報を共有できます。
選択肢 C:専門の手話通訳者が到着するまで、一切の案内を控える クリックして判定 →
災害直後は交通網の寸断などで手話通訳者がすぐには到着できない場合があります。手話ができなくても、紙とペン、スマートフォンのメモ画面、ホワイトボード、指差しシートを使えばその場ですぐに温かいコミュニケーションが取れます。正解は選択肢Bです。
「停電の暗闇で紙もスマホもないとき、『手のひらに指でひらがなを書く』と伝わる!」
夜間の停電などで明かりがなく、相手の顔や手元が見えないときに覚えておきたい知恵が「手のひら書き」です。相手の手のひらに、自分の人差し指で「だいじょうぶ」「にげよう」と一文字ずつゆっくりひらがなを書くことで、音も光もない場所でも確実に言葉と安心感を伝えることができます。ただし、相手から見て文字が裏返し(鏡文字)にならないよう、相手の向きに合わせて書くのがコツです。
手話AI・緊急コミュニケーション支援プロジェクト『Moshimo』
筋電センサー(sEMG)とエッジAIを活用した、カメラ・通信不要の双方向手話・緊急伝達技術の研究開発を進めています。
実務確認 場面別の実務確認ポイント
夜間や外出先で災害・急病が起きたときに、今日のうちにスマホに入れておきたい3つの無料設定(NET119・LEDフラッシュ・メディカルID)を確認できます。
救急外来や地域の避難所運営において、「聞こえない・話せない避難者」を原則として取り残さないための視覚掲示ルールと指差し問診フローを解説しています。
基地局輻輳下での遅延耐性ネットワーク(DTN)オフライン同期、振動・視覚ケイデンス仕様、および筋電(sEMG)手話緊急意図パケットのRust実装を詳解します。
遅延耐性ネットワーク(DTN)オフライン医療トリアージ同期、触覚・視覚ケイデンス仕様、および表面筋電(sEMG)手話緊急意図パケットの構造設計
本モノグラフでは、大規模災害による基地局ブラックアウトおよび救急医療現場における非音声・超低帯域緊急通信アーキテクチャを定義する。(1) RFC 4838 / RFC 9171 (Bundle Protocol v7) に基づく Store-Carry-Forward 型 DTN トリアージパケットの中継到達確率、(2) パチニ小体(Pacinian Corpuscle)の機械受容感度を最大化する触覚パルス列と視覚フラッシュの同期仕様、および (3) 32バイト固定長のコンパクト緊急医療・手話意図パケット(Compact Emergency Triage Frame)を Rust 2024 `no_std` 互換構造体で実装する。
01. 基地局途絶下における Epidemic DTN メッシュの到達遅延モデル: 商用セルラー網が途絶した被災地域において、N 台の移動端末(避難者・救急隊員のスマートフォンまたは BLE アドバタイズ機器)が互いにすれ違う接触率(Pairwise Contact Rate)を β とする。時刻 t=0 に1台の端末から発信された 32 バイトの緊急医療・安否フレームが、時刻 t までに少なくとも1つの救護拠点ゲートウェイへ到達する確率 P_deliv(t) は、マルコフ連鎖の連続時間近似により次式で与えられる。
ペイロードを単一の BLE Extended Advertising PDU または QR コード1枚に収まる 32 バイト固定長に圧縮することで、TCP コネクション確立なし(0-RTT Connectionless Broadcast)でのバケツリレー伝搬が可能となる。
02. 皮膚機械受容器(パチニ小体)の周波数応答と非聴覚緊急アラート: 聴覚に頼らない緊急地震速報・火災アラートにおいて、ヒトの無毛部・有毛部皮膚に分布するパチニ小体(FA II 機械受容器)は振動周波数 f_vib ∈ [150, 300] Hz(極小変位閾値 f_0 ≈ 250 Hz)に対して最も高い感度を示す。一方、一定振幅の連続振動は数秒で感覚順応(Adaptation)を引き起こすため、デューティ比を変調したバースト列(例:300 ms ON, 150 ms OFF × 3 + 600 ms ON)と画面全体の輝度反転(光感受性発作を防ぐため点滅周波数 f_flash ≤ 2.5 Hz に厳しく制限)を同期させる設計が安全かつ確実である。
| Byte Offset | Field Name | Bit Encoding / Format | Clinical & Rescue Meaning |
|---|---|---|---|
| Bytes 0..1 | Magic & Version | 0x4F4B ('OK'), Ver 1, Triage Level (2b) | Immediate Packet Identification & Priority |
| Bytes 2..3 | Comm & Medical Flags | Bitmask: JSL / Written / Allergy / Insulin / Dialysis | Instant Deaf-Communication & Critical Care |
| Bytes 4..11 | Quantized WGS84 | i32 Lat (1e-7 deg), i32 Lon (1e-7 deg) | 1.1 cm Spatial Precision for Rescue Teams |
| Bytes 12..15 | Intent & CRC-16 | sEMG Sign Intent ID (u16) + CRC-16-CCITT (u16) | Zero-Corruption Integrity Verification |
#![forbid(unsafe_code)]
/// Communication and medical alert flags for instant paramedic & shelter triage.
pub const FLAG_REQUIRES_SIGN_LANGUAGE_JSL: u16 = 1 << 0;
pub const FLAG_REQUIRES_WRITTEN_TEXT_BOARD: u16 = 1 << 1;
pub const FLAG_HAS_DRUG_OR_FOOD_ALLERGY: u16 = 1 << 2;
pub const FLAG_REQUIRES_CONTINUOUS_MEDS: u16 = 1 << 3;
pub const FLAG_WEARS_COCHLEAR_OR_HEARING_AID: u16 = 1 << 4;
/// Compact 16-byte offline emergency triage frame designed for BLE Mesh & QR broadcast.
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct EmergencyTriageFrame {
pub triage_severity: u8, // 0=Safe, 1=Minor, 2=Delayed, 3=Immediate(Red)
pub hop_ttl: u8, // Remaining DTN relay hops (max 15)
pub medical_comm_flags: u16, // Bitmask of communication & medical requirements
pub lat_e7: i32, // Latitude * 1e7
pub lon_e7: i32, // Longitude * 1e7
pub semg_intent_code: u16, // Recognized JSL emergency sign ID (e.g., 101=Chest Pain)
}
/// Computes CRC-16-CCITT (polynomial 0x1021, initial 0xFFFF) over a byte slice.
pub const fn crc16_ccitt(bytes: &[u8]) -> u16 {
let mut crc: u16 = 0xFFFF;
let mut i = 0;
while i < bytes.len() {
crc ^= (bytes[i] as u16) << 8;
let mut bit = 0;
while bit < 8 {
if (crc & 0x8000) != 0 {
crc = (crc << 1) ^ 0x1021;
} else {
crc <<= 1;
}
bit += 1;
}
i += 1;
}
crc
}
impl EmergencyTriageFrame {
/// Encodes the frame into a 16-byte wire format with CRC-16 integrity protection.
pub fn to_wire_bytes(self) -> [u8; 16] {
let mut buf = [0u8; 16];
buf[0] = 0x4F; // 'O'
buf[1] = ((self.triage_severity & 0x0F) << 4) | (self.hop_ttl & 0x0F);
let flags = self.medical_comm_flags.to_be_bytes();
buf[2] = flags[0];
buf[3] = flags[1];
let lat = self.lat_e7.to_be_bytes();
buf[4..8].copy_from_slice(&lat);
let lon = self.lon_e7.to_be_bytes();
buf[8..12].copy_from_slice(&lon);
let intent = self.semg_intent_code.to_be_bytes();
buf[12] = intent[0];
buf[13] = intent[1];
let crc = crc16_ccitt(&buf[0..14]).to_be_bytes();
buf[14] = crc[0];
buf[15] = crc[1];
buf
}
/// Decodes and verifies a 16-byte wire frame. Returns None on magic or CRC mismatch.
pub fn from_wire_bytes(buf: &[u8; 16]) -> Option<Self> {
if buf[0] != 0x4F {
return None;
}
let expected_crc = crc16_ccitt(&buf[0..14]);
let actual_crc = u16::from_be_bytes([buf[14], buf[15]]);
if expected_crc != actual_crc {
return None;
}
Some(Self {
triage_severity: (buf[1] >> 4) & 0x0F,
hop_ttl: buf[1] & 0x0F,
medical_comm_flags: u16::from_be_bytes([buf[2], buf[3]]),
lat_e7: i32::from_be_bytes([buf[4], buf[5], buf[6], buf[7]]),
lon_e7: i32::from_be_bytes([buf[8], buf[9], buf[10], buf[11]]),
semg_intent_code: u16::from_be_bytes([buf[12], buf[13]]),
})
}
}