気象庁の予報と警報の電文を毎夕取り込み、翌日の高所作業・クレーン作業・コンクリート打設を中止するかの判断材料を現場ごとにまとめて所長に送る
気象庁が公開する予報と警報の電文を毎夕取り込み、現場ごとの翌日の作業予定と社内の中止基準に照らします。高所作業・クレーン作業・コンクリート打設を中止するかの判断材料を作り、所長に送ります。決めるのは所長です。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Make/n8n/Power Automate
- 対象業界
- 建設/製造
- 対象部門
- 品質管理
- 対象業務
- 内容確認・チェック/書類作成
- 主な課題
- 判断に時間がかかる/属人化している/期限・対応漏れが起きる
- AIで行う処理
- 判定
- 主な効果
- 判断支援/品質標準化/工数削減
- 導入難易度
- ★★★☆☆
- 実装レベル
- 本格構成
- 費用感
- ノーコード連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 所長が、翌日の作業予定表で、高所作業・クレーン作業・打設の予定を確かめる
- 気象庁のページや天気のアプリで、現場のある地域の翌日の予報と警報を見る
- 風速・雨量・気温を、社内の中止基準と頭の中で照らす
- 実施・入れ替え・中止を決め、作業予定表の備考に書く
- 職長、クレーンの会社、生コンの工場に連絡する
- 夜や翌朝に予報が変われば、もう一度見て連絡し直す
- 安全品質課が、翌朝に各現場の判断を集めて記録する
- 人所長が、16時までに翌日の作業予定表を埋める(今までどおり)
- 自動17時30分に n8n が動き、気象庁の電文の一覧から最新の時系列情報・府県天気予報・府県気象情報を取る
- 自動現場ごとに、現場のある市町村の値と、翌日の作業の時間帯を重ねる
- 自動社内の中止基準と照らし、作業ごとに基準を超える時間帯を規則で判定する
- 自動Claude が、規則の判定と電文の文章の注意事項をあわせ、作業ごとの判断材料の文を作る
- 自動所長に判断材料をメールで送り、作業予定表の「判断材料」の列に書く
- 人所長が判断材料を読み、実施・入れ替え・中止を決めて「判断」の列に書く
- 自動翌朝5時30分にもう一度取り、判定が変わった現場の所長にだけ知らせる
- 人所長が、当日の朝に現場の風速計と空の様子を見て最終的に決める
各工程の詳しい説明を読む
- 所長が、翌日の作業予定表で、高所作業・クレーン作業・打設の予定を確かめる
- 気象庁のページや天気のアプリで、現場のある地域の翌日の予報と警報を見る
- 風速・雨量・気温を、社内の中止基準と頭の中で照らす
- 実施・入れ替え・中止を決め、作業予定表の備考に書く
- 職長、クレーンの会社、生コンの工場に連絡する
- 夜や翌朝に予報が変われば、もう一度見て連絡し直す
- 安全品質課が、翌朝に各現場の判断を集めて記録する
(a)見る情報と照らし方が所長ごとに違う。 「風がやや強い」という文を見て判断する所長と、時間ごとの最大風速の値を見る所長では、同じ予報から違う結論が出ます。 安全品質課が後から見ても、なぜその判断になったかが追えません。
(b)夕方の確認が忙しさで省かれる。 夕方は翌日の段取りと書類が重なる時間です。予報を見るのが遅れ、生コンの工場への連絡が締切を過ぎることがあります。
(c)作業の時間帯と予報の時間帯を合わせていない。 打設が午前だけなのに一日の予報で中止したり、クレーンの揚重が午後なのに午前の予報で決めたりします。時間ごとの値を作業の時間帯に重ねて見る手間が、いちばん省かれます。
(d)判断の記録がそろわない。 安全品質課は、各現場の判断を翌朝に電話で集めています。何の値を見てどう判断したかが残らないので、ヒヤリハットの振り返りに使えません。
- 【人】 所長が、16時までに翌日の作業予定表を埋める(今までどおり)
- 【自動】 17時30分に n8n が動き、気象庁の電文の一覧から最新の時系列情報・府県天気予報・府県気象情報を取る
- 【自動】 現場ごとに、現場のある市町村の値と、翌日の作業の時間帯を重ねる
- 【自動】 社内の中止基準と照らし、作業ごとに基準を超える時間帯を規則で判定する
- 【自動】 Claude が、規則の判定と電文の文章の注意事項をあわせ、作業ごとの判断材料の文を作る
- 【自動】 所長に判断材料をメールで送り、作業予定表の「判断材料」の列に書く
- 【人】 所長が判断材料を読み、実施・入れ替え・中止を決めて「判断」の列に書く
- 【自動】 翌朝5時30分にもう一度取り、判定が変わった現場の所長にだけ知らせる
- 【人】 所長が、当日の朝に現場の風速計と空の様子を見て最終的に決める
7番目と9番目が、この設計の分かれ目です。 判断材料は前日の予報に基づくもので、当日の作業を止めるかは、その場の風と雨で所長が決めます。 法令の作業中止も、危険が予想されるときに事業者が止めるという定めで、予報の値だけで決まるものではありません。
4番目を規則にしているのも、意図してのことです。 「最大風速が10m/s以上の時間帯に、クレーンの揚重が予定されている」は数値の比較です。AIに比べさせると、時間帯の重なりを読み違えることがあります。 AIは規則の判定を受け取り、下げることはできず、文章の注意事項で上げることだけができるようにします。
02今回想定するシステム構成
【トリガー】毎日17時30分と翌朝5時30分(Schedule Trigger、時間帯は Asia/Tokyo) ▼ n8n ├─ HTTP Request ── 気象庁の長期フィード(定時・随時) ├─ Code ── 対象の府県の最新の電文を選ぶ(取得済みのものは取らない) ├─ HTTP Request ── 電文(時系列情報 VPWP50、府県天気予報 VPFD51、府県気象情報 VPFJ50) ├─ XML ── 電文を JSON にする ├─ Google Sheets ── 現場の一覧(市町村コード、府県)と翌日の作業予定 ├─ Code ── 作業の時間帯と3時間ごとの値を重ね、中止基準と照らす ▼ Basic LLM Chain + Anthropic Chat Model + Structured Output Parser │ 作業ごとの判断材料(規則の判定+文章の注意事項) ▼ Code ── 規則の判定を下げていないかの検査 ▼ Gmail ── 所長へ / Google Sheets ── 「判断材料」の列へ
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| ワークフロー | n8n | Make、Power Automate |
| 生成AI | Claude(n8n の Anthropic Chat Model ノード) | OpenAI API、Gemini API |
| 気象の情報 | 気象庁防災情報XML(PULL型の公開電文) | 予報業務の許可を受けた事業者の気象データのサービス |
| 台帳 | Google スプレッドシート(現場の一覧、翌日の作業予定、判断の記録) | n8n の Data Table |
| 通知 | Gmail(n8n の Gmail ノード) | Slack、Microsoft Teams |
新しく足すのは n8n と、生成AIの利用だけです。 気象庁の電文は公開されており、作業予定表とメールは今あるものを使います。
気象庁の電文は、Atom のフィードで公開されています。 公式ページでは、定時・随時・地震火山・その他の4つの分類に、毎分更新で直近10分以上を載せる高頻度のフィードと、毎時更新で数日間の全入電を載せる長期のフィードがあるとされています。この構成は1日2回なので、長期のフィードを使います。 公開電文の一覧の資料では府県天気予報が「定時」、警報・注意報や時系列情報が「随時」の分類ですが、どのフィードに載るかは実際のフィードで確かめ、定時と随時の両方から電文の種類のコードで選びます。
使う電文は3つです。 気象庁の解説資料では、気象警報・注意報時系列情報(VPWP50)は1日4回(5時、11時、17時、23時まで)に定時発表され、市町村ごとに3時間などの時間幅で起こりうる予測の最大値を示し、目先1両日程度の推移の把握に使うことを想定しているとされています。府県天気予報(VPFD51)の地域時系列予報には、3時間ごとの代表風の風速の階級(毎秒0から2メートル、…、20メートル以上の6段階)と3時間ごとの気温が入ります。
03どうやって実装するのか
処理の起点を決める
Schedule Trigger で、毎日17時30分と翌朝5時30分に動かします。 時系列情報は17時と5時までに定時発表されるので、その30分後に取りに行きます。 Schedule Trigger の公式ページでは、ワークフローに時間帯が無ければ n8n のインスタンスの時間帯に従い、自前で置いた場合の既定は America/New York とされています。Asia/Tokyo を指定しないと、判断材料が夜中に届きます。
17時30分の回が本番で、5時30分の回は変わったことの確認です。 夕方の判断材料で所長は職長と生コンの工場に連絡しています。朝の回で判定が変わらなければ、何も送りません。 変わった現場の所長にだけ、変わった作業と値を知らせます。毎朝同じ内容が届くと、所長は読まなくなります。
所長の作業予定表の締切を16時にしているのは、17時30分の回に間に合わせるためです。 締切までに埋まっていない現場は、判断材料を作らずに「予定が未記入」と所長に知らせます。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 時系列情報(VPWP50) | 市町村ごとの3時間ごとの最大風速(m/s)・1時間最大雨量(mm)・降雪量、注意報級・警報級の別、発表時刻 | 気象庁の長期フィード |
| 府県天気予報(VPFD51) | 地域ごとの天気、3時間ごとの風速の階級、地点ごとの3時間ごとの気温 | 気象庁の長期フィード |
| 府県気象情報(VPFJ50) | 気象の状況と注意すべき事項を伝える文章(発表されたときだけ) | 気象庁の長期フィード |
| 現場の一覧 | 現場名、所在の市町村コード、府県、地域時系列予報の地域、所長のメールアドレス | Google スプレッドシート |
| 翌日の作業予定 | 作業の種類、開始・終了の時刻、クレーンの機種、打設の数量 | Google スプレッドシート(現場ごとのシート) |
| 中止基準 | 作業ごとの基準の値(風速・雨量・気温)と、その根拠 | Google スプレッドシート |
質を決めるのは、いちばん下の中止基準の表です。 法令の悪天候の目安を下限にし、クレーンは機種ごとのメーカーの基準、打設は施工計画の基準を、作業の種類ごとに数値で持たせます。基準が文章のままでは、規則で照らせません。
時系列情報の最大風速は、気象庁の用語では10分間平均風速の最大値です。 気象庁の予報用語のページでは、最大風速は10分間平均風速の最大値とされています。厚生労働省の群馬労働局のページでは、労働安全衛生規則の強風は10分間の平均風速が毎秒10メートル以上の風、大雨は1回の降雨量が50ミリメートル以上の降雨とされています。同じ10分間平均の値なので、比べる単位はそろいます。 ただし、値は市町村単位の予測の最大値で、現場の高さや地形の風ではありません。
データの取得方法を決める
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 電文の一覧 | 長期フィード(定時・随時)を HTTP Request で取得 | 最新の電文の URL を選ぶ |
| 各電文 | 一覧の URL を HTTP Request で取得し、XML ノードで JSON に | 値と文章の取り出し |
| 現場と作業予定 | Google Sheets ノードの Get Row(s) | 照らす対象 |
電文の一覧から、対象の府県の最新のものを選びます。 フィードの各項目には電文の題名と URL があり、URL に電文の種類のコード(VPWP50 など)と府県のコードが含まれます。現場のある府県の分だけを選び、取り終えた URL は記録して二度取りません。
取りすぎに注意します。 気象庁の情報の取得方法のページでは、公開の URL に1日10GB以上のダウンロードを伴うアクセスがあると、アクセス元の IP アドレスを遮断するとされ、一度取得したファイルを再度取得しないなどの改修を求めています。1日2回の取得なら量は小さいですが、取り直しの処理の誤りで同じ電文を繰り返し取らないよう、取得済みの URL を必ず記録します。
電文は XML ノードで JSON にします。 n8n の公式ページでは、XML ノードは XML と JSON の相互の変換を行い、属性を親の項目にまとめる設定(Merge Attributes)や、子の要素を常に配列にする設定(Explicit Array)があります。電文の値は type="最大風速" のような属性で区別されるので、属性を残したまま変換し、Code ノードで種類ごとに取り出します。
AIへ渡す前に整形する
- 市町村の値を引く … 時系列情報から、現場の市町村コードの要素を取り出します
- 時刻の対応を作る … 電文の時刻の定義(3時間ごとの区切り)を、翌日の時刻に直します
- 作業の時間帯と重ねる … 作業の開始・終了の時刻にかかる3時間の区切りを選び、その区切りの値の最大を取ります
- 基準と照らす … 作業の種類ごとの基準と比べ、超える区切りに
exceed、基準の8割以上にnearの印を付けます - 文章の注意を集める … 府県気象情報が出ていれば、その府県の文章を取り出します
- 欠けを記録する … 現場の市町村が電文に無い、作業予定が未記入、などを記録します
3番目を規則で行うのが、この構成でいちばん効く部分です。 打設が9時から12時なら、9時〜12時の区切りの値だけを見ます。一日の最大値で決めると、午後の雨で午前の打設を止めることになります。 区切りにまたがる作業は、かかる区切りすべての値の最大を取ります。
値を補いません。 現場の市町村が電文に無いときに、隣の市町村の値で代えることはしません。欠けとして所長に知らせ、所長が気象庁のページで確かめます。 隣の値で代えることは、内挿と同じ性質の加工になるからです。
AIに処理させる
Basic LLM Chain に、規則の判定と文章の注意事項をあわせた判断材料を作らせます。 公式ページでは、Basic LLM Chain はプロンプトを決めるノードで、出力の形を求めるときは Structured Output Parser などのパーサーをつなぐとされています。
| させること | 中身 |
|---|---|
| 作業ごとの区分 | consider_stop(中止を検討)・conditional(条件付きで実施を検討)・as_planned(予定どおり)のどれか |
| 根拠の値 | 基準を超えた・近づいた区切りの時刻と値、電文の種類と発表時刻 |
| 文章の注意事項 | 府県気象情報の文章から、その作業に関係する注意(落雷、突風、急な強い雨など)を写す |
| 所長への文 | 作業ごとに2〜3文。何時から何時に、どの値が、どの基準に対してどうか |
| 確かめてほしいこと | 当日の朝に現場で見るべきこと(風速計の値、雨の降り始め) |
| させないこと | 理由 |
|---|---|
| 規則の判定を下げる | exceed の作業を as_planned にしない。下げてよいのは所長だけ |
| 値の補正・推定 | 現場の高さや地形での風、隣の市町村の値での補完は、独自の予報とみなされうる |
| 予報の言い換えで値を作る | 「やや強い風」から m/s の値を作らない |
| 中止の決定 | 決めるのは所長 |
| 電文に無い情報の追加 | 天気のアプリや一般の知識で補わない |
区分の名前を「中止」ではなく「中止を検討」にしているのは意図してのことです。 判断材料が「中止」と書けば、所長は確かめずにそれに従うか、反発して読まなくなります。どちらも、所長の判断を支える材料にはなりません。
指示内容を固定する
Basic LLM Chain のシステムメッセージに、次のように書きます。
あなたは建設会社の安全品質課の担当として、翌日の作業を中止するかを所長が
判断するための材料を作ります。決めるのは所長です。
【入力】
- 現場名と、翌日の作業の一覧(作業の種類、開始・終了の時刻)
- 作業ごとの規則の判定(exceed / near / none)と、根拠になった区切りの時刻と値、
比べた基準の値、電文の種類と発表時刻
- 府県気象情報の文章(発表されていなければ空)
【区分の選び方】
- 規則の判定が exceed の作業 → consider_stop
- 規則の判定が near の作業 → conditional
- 規則の判定が none の作業 → as_planned。ただし、府県気象情報の文章に、
その作業に関係する注意(落雷、突風、急な強い雨など)があれば conditional
規則の判定より軽い区分にしないでください。
【厳守事項】
- 値は入力の値と発表時刻をそのまま書いてください。
値を補ったり、現場の高さや地形に合わせて推定したりしないでください。
- 「やや強い風」などの言葉から、風速の数値を作らないでください。
- 府県気象情報の文章から注意を写すときは、原文の言葉をそのまま引いてください。
- 入力に無い情報(一般的な天気の傾向、他のサービスの予報)を足さないでください。
- 「中止します」「中止してください」とは書かないでください。
所長が判断するための事実と、当日の朝に現場で確かめることだけを書いてください。
「規則の判定より軽い区分にしない」が最も大事な一文です。 AIは、府県気象情報に強い表現が無いと「予報は穏やか」と読み、exceed の作業を conditional に下げることがあります。ワークフローでも、出力の区分が規則の判定より軽ければ、規則の判定で上書きします。
「言葉から数値を作らない」も効きます。 書かないと、地域時系列予報の風の階級や「やや強い」から、「10m/s程度」のような値を自分で書き足します。 電文に無い値は、所長に誤った確からしさを与えます。
出力形式を固定する
Structured Output Parser で、次の形に決めます。 公式ページでは、JSON の例から生成するとすべての項目が必須として扱われ、JSON Schema で定義することもできるとされています。
{
"site_id": "S-07",
"target_date": "2026-10-15",
"works": [
{
"work_id": "W-2",
"work_type": "crane | high_place | concrete",
"category": "consider_stop | conditional | as_planned",
"rule_result": "exceed | near | none",
"evidence": [
{ "element": "最大風速", "period": "12時-15時", "value": "12 m/s",
"threshold": "10 m/s", "source": "VPWP50", "issued_at": "2026-10-14T17:00+09:00" }
],
"text_cautions": [],
"message": "",
"check_on_site": ""
}
]
}
1つ目の理由は、規則の判定と区分を並べて検査できることです。 ワークフローは rule_result と category を比べ、区分が規則より軽ければ上書きして記録します。 AIの誤りが所長に届く前に止まります。
2つ目は、根拠を発表時刻とともに残せることです。 issued_at があれば、所長はどの時点の予報で判断したかを記録に残せます。朝の回で値が変わったときも、前の値と並べて知らせられます。
3つ目は、メールと作業予定表に同じ内容を書けることです。 メールは現場ごとに1通で、作業ごとに次の形で並べます。
| 欄 | 中身 |
|---|---|
| 作業 | 作業の種類と時間帯 |
| 区分 | 中止を検討/条件付きで実施を検討/予定どおり |
| 根拠 | 区切りの時刻、値、基準、電文と発表時刻 |
| 注意 | 府県気象情報の原文の引用 |
| 当日の朝に確かめること | 風速計の値、雨の降り始めなど |
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 気象庁の公開電文 | HTTP Request + XML ノード | フィードと電文の取得、JSON への変換 |
| 作業予定表 | Google Sheets ノード(Get Row(s)・Update Row) | 現場と作業予定の読み取り、判断材料の書き込み |
| Anthropic のモデル | Anthropic Chat Model ノード | 判断材料の文の作成 |
| Gmail | Gmail ノードの Send a message | 所長へのメール |
作業予定表には「判断材料」の列だけを書き込みます。 Google Sheets ノードの公式ページでは、シートの行の操作に Get Row(s)・Update Row・Append Row などがあります。所長が書く「判断」の列には触れません。 判断材料と判断を同じ行に並べると、安全品質課は翌朝に電話をかけずに記録を集められます。
メールは Gmail ノードの Send a message で送ります。 公式ページでは、既定で本文の末尾に n8n から自動で送られた旨の一文が付くとされています。社内の連絡なので付けたままでもよく、むしろ自動の判断材料であることが所長に伝わります。
人が確認する
所長が、判断材料を読んで翌日の作業を決めます。
consider_stopの作業を先に見る … 根拠の時間帯と値を見て、作業の時間をずらせるか、別の作業に入れ替えられるかを考えますconditionalの作業を見る … 当日の朝に何を見て決めるかを、職長と決めておきます- 判断を書く … 作業予定表の「判断」の列に、実施・入れ替え・中止と理由を書きます
- 連絡する … 職長、クレーンの会社、生コンの工場に連絡します
- 当日の朝に最終的に決める … 現場の風速計と空の様子で、作業を始めるかを決めます
5番目は、この構成が代わりにならない部分です。 労働安全衛生規則第522条は、高さ2メートル以上の作業で強風・大雨・大雪等の悪天候のため危険が予想されるときに作業を禁じ、クレーン等安全規則第31条の2は、強風のためクレーンの作業に危険が予想されるときに作業の中止を求めています。危険が予想されるかを、その場で見て判断するのは事業者と所長です。
目標は、1件をならして5分です。 as_planned だけの日は判断材料を流し読みして終わり、consider_stop がある日は入れ替えを考えて連絡するので15分を超えます。
例外に対処する
| 起きること | 対応 |
|---|---|
| 17時の時系列情報がフィードにまだ無い | 15分おいて取り直す。18時までに無ければ前回の電文で作り、その旨を明記 |
| 現場の市町村が電文に無い | 値を補わず「値なし」として所長に知らせる |
| 作業予定が16時までに未記入 | 判断材料を作らず、所長に未記入を知らせる |
| 電文の値が「値なし」 | その区切りを判定せず、所長に知らせる |
| 出力の区分が規則の判定より軽い | 規則の判定で上書きし、記録に残す |
| 出力が決めた形に合わない | 1回だけやり直し、だめなら規則の判定だけをメールで送る |
| 朝の回で判定が変わった | 変わった作業と、前後の値を並べて所長に知らせる |
| 気象庁の配信が止まる・遅れる | 判断材料を送らず、気象庁のページで確かめるよう所長に知らせる |
最後の行は、組む前に決めておいてください。 気象庁の情報の取得方法のページでは、サーバーのメンテナンス等で配信が停止・遅延する場合があるとされ、迅速かつ確実な配信については気象業務支援センター等に問い合わせるよう案内されています。判断材料が届かないことを、「問題なし」と読まれないようにします。 届かないときは、届かないという知らせを送ります。
記録を残す
- 取得した電文の URL・種類・発表時刻
- 現場ごと・作業ごとの、照らした区切りの値と基準、規則の判定
- AIの出力と、ワークフローが上書きした区分とその理由
- 所長に送ったメールの日時と、作業予定表に書いた判断材料
- 所長の判断(実施・入れ替え・中止)と理由
- 当日の実際の作業の実施・中止と、現場の風速計の記録
最後の2行が、中止基準の見直しの材料になります。 判断材料と所長の判断、当日の実際を並べると、基準が厳しすぎて入れ替えが多いのか、甘すぎて当日の朝に止めているのかが分かります。
04実装レベルの3段階
最小構成では、値を写す手間が残ります。 12現場では続きません。確かめるための段階です。 半自動化で、1件20分が10分程度になります。 調べて重ねる①と照らす②の大半は無くなりますが、照合の表を読んで理由を作業予定表に書き、安全品質課が集める③が残ります。本格構成で5分になり、この段階が本記事の想定です。 差が出るのは、判断材料が作業予定表に書かれ、所長は判断を書き足すだけになるからです。 段階を飛ばさないでください。 半自動化を1か月回すと、near が多すぎる基準と、電文に値の無い現場が見えてきます。基準と現場の一覧を直してから判断材料を足すほうが、所長に読まれ続けます。
05工数削減シミュレーション
導入後 240件 × 5分 ÷ 60 = 20 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 複数の現場を同時に動かし、高所作業・クレーン作業・コンクリート打設の予定が毎日入る建設会社。所長が夕方に気象庁のページや天気のアプリを見て、翌日の作業を決めている場合。社内に作業ごとの中止の基準はあるが、照らし方が所長によって違う場合。
- 現場が1〜2か所で、所長が予報を見て決めれば足りる場合。当日の作業の中止の判断(現場の風速計と目視で行う。この構成は前日の判断材料まで)。独自の地点予報が必要な場合(予報業務の許可を受けた事業者のサービスを使う)。なお、作業を中止するかの判断はこの構成では代替できません。
07最小構成で試す方法
- 先月の作業予定表から、クレーン作業・高所作業・打設の予定があった日を10日選ぶ(当日の朝に中止した日を含める)
- 気象庁のページで、その前日の夕方の時系列の予報を確かめられる範囲で写す(写せない日は、試験の期間中に毎夕写す)
- 手元の生成AIの画面に、作業予定、写した値、社内の中止基準を貼り、「作業ごとに、基準を超える時間帯があるかを示し、中止を検討・条件付き・予定どおりのどれかを選んでください。値を補わないでください」と指示する
- 当時の所長の判断と、当日の実際と突き合わせる
10日は必ずやってください。 ワークフローを組む前に、「社内の中止基準を数値で照らせるか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 所長の判断と区分がほぼ同じ | n8n で組む段に進む |
| 作業の時間帯と予報の時間帯を取り違える | 時間帯の重ね合わせを規則で行う。構成は有効 |
| 基準が文章で、照らしようがない | 中止基準を数値にするのが先。 AIの問題ではない |
3行目が出ることは珍しくありません。 「強風のおそれがあるとき」のような基準は、所長の頭の中で数値になっています。その数値を安全品質課と所長で書き出すことが、この構成の最初の成果です。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 判断材料が夜中に届く | ワークフローの時間帯を Asia/Tokyo にする(既定は America/New York) |
| 一日の最大値で午前の作業を止める | 作業の時間帯にかかる区切りだけで照らす |
| AIが規則の判定を下げる | 区分が規則より軽ければ規則で上書きする |
| AIが「やや強い」から値を作る | 言葉から数値を作らないと指示し、根拠は電文の値だけにする |
| 市町村が電文に無い現場で隣の値を使う | 補わず「値なし」として知らせる。補完は独自の予報とみなされうる |
| 同じ電文を何度も取る | 取得済みの URL を記録する。1日10GB以上でアクセスを遮断される |
| 17時の電文がまだ無い | 15分おいて取り直し、前回の電文で作るときは明記する |
| 配信が止まっても誰も気づかない | 届かないときは「届かない」と知らせる |
| 毎朝同じ内容が届いて読まれない | 朝の回は変わった現場だけに送る |
| 判断材料を「中止の指示」と受け取る | 区分を「中止を検討」にし、「中止してください」と書かない |
| 基準が文章のままで照らせない | 作業の種類ごとに数値にする |
上の3行が、この構成でいちばん起きやすい失敗です。 どれもAIの賢さとは関係なく、時刻と区分の扱いを規則に置いているかどうかで決まります。
5行目は、法令の面でも避けてください。 予報業務許可のよくある質問では、気象庁の格子点の値について、特定の地点の値を抜き出して空間の内挿や地形の補正を行うと、独自の予報とみなされる可能性があるとされています。現場に近い値が欲しいときは、予報業務の許可を受けた事業者のサービスを使います。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 気象庁の公開電文、現場の所在地(市町村)、翌日の作業予定、所長のメールアドレスです。気象の情報は公開のものですが、作業予定は取引先と工程に関わる社内の情報です。
- 気象庁の値を加工しない … 値は市町村の値を発表時刻とともにそのまま示し、補完・補正・推定をしません
- 判断はAIに任せない … 区分は判断材料で、作業を中止するかは所長が決め、当日の朝に現場で最終的に決めます
- 規則の判定をAIに下げさせない … 出力を規則の判定と比べ、軽ければ上書きします
- 配信の停止を「問題なし」と読ませない … 届かないときは届かないと知らせます
- 作業予定の範囲を絞って渡す … AIに渡すのは作業の種類と時間帯、規則の判定までで、取引先の名前や工程の詳細は渡しません
気象庁は、公開電文を用いた利用者の行為について責任を負わないと、情報の取得方法のページで示しています。判断材料の誤りの責任は、この仕組みを使う自社にあります。
誤りが起きた場合のリスクは、危険な作業を予定どおりと示してしまうことと、問題の無い作業を中止の検討に回して工程を無駄にすることの2つです。 前者は規則の判定を下げさせないことと当日の朝の確認で、後者は判断と当日の実際の記録で基準を見直すことで防ぎます。
10まず何から始めるか
1週目:中止基準を数値にする
安全品質課と所長で、クレーン作業・高所作業・打設の中止基準を、風速・雨量・気温の数値と時間の単位で書き出します。法令の悪天候の目安を下限にします。
2週目:10日で試す
先月の作業予定から10日を選び、手元の生成AIの画面で区分を出させて、当時の所長の判断と当日の実際と突き合わせます。作業の時間帯を取り違えていないかを最優先で見ます。
3週目:現場の一覧と作業予定表を整える
各現場の所在の市町村コードと地域時系列予報の地域を調べて一覧にし、作業予定表に開始・終了の時刻と「判断材料」「判断」の列を足します。
4週目:電文の取得と照合をつなぐ
n8n で毎夕電文を取り、現場ごとの値と基準の照合の表を所長にメールで送るところまで作ります。この時点ではAIの判断材料を付けません。
2か月目: 府県気象情報の文章をあわせた判断材料と、朝の変化の通知を足します。3か月目以降: 判断材料・所長の判断・当日の実際を並べて中止基準を見直し、1件20分が何分になったかを実測します。12の現場の判断が同じ表で振り返れるようになった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 公開電文を Atom のフィードで取れ、定時・随時・地震火山・その他に分かれ、高頻度(毎分更新・直近10分以上)と長期(毎時更新・数日間)があること。1日10GB以上でアクセス元を遮断し、再取得しない改修を求めること。配信が停止・遅延しうること、利用者の行為に気象庁が責任を負わないこと | 気象庁: 気象庁防災情報XMLフォーマット形式電文の公開(PULL型) | 2026-10-14 |
| 時系列情報(VPWP50)が1日4回(5時・11時・17時・23時まで)定時発表され、市町村ごとに時間幅で起こりうる予測の最大値を示し、目先1両日程度の推移の把握を想定していること。府県天気予報の地域時系列予報に3時間ごとの風速の階級(6段階)と気温が入ること(電文ごとの解説資料) | 気象庁: 気象庁防災情報XMLフォーマット 技術資料 | 2026-10-14 |
| 府県天気予報/地域時系列予報が「定時」、気象特別警報・警報・注意報、気象警報・注意報時系列情報、府県気象解説情報などが「随時」の分類で公開されていること(2026/8/6 現在) | 気象庁: 気象庁ホームページを通じて公開する XML 電文一覧 | 2026-10-14 |
| 最大風速が10分間平均風速の最大値であること | 気象庁: 予報用語 風 | 2026-10-14 |
| 気象庁が発表した予報や警報の内容をそのまま伝える場合は予報業務に当たらないこと。波浪モデルの格子点の値から特定の地点の値を抜き出して空間の内挿や地形の補正を行うと独自の予報とみなされる可能性があること | 気象庁: 予報業務許可についてよくお寄せいただくご質問 | 2026-10-14 |
| 労働安全衛生規則の強風が10分間の平均風速が毎秒10メートル以上の風、大雨が1回の降雨量が50ミリメートル以上の降雨であること。作業ごとの中止・禁止の条文 | 群馬労働局: 悪天候時の作業中止について | 2026-10-14 |
| 労働安全衛生規則第522条(悪天候時の作業禁止) | e-Gov 法令API: 労働安全衛生規則 | 2026-10-14 |
| クレーン等安全規則第31条の2(強風時の作業中止) | e-Gov 法令API: クレーン等安全規則 | 2026-10-14 |
| ワークフローに時間帯が無ければインスタンスの時間帯に従い、自前の既定が America/New York であること | n8n Docs: Schedule Trigger | 2026-10-14 |
| XML ノードが XML と JSON を相互に変換し、Merge Attributes・Explicit Array などの設定があること | n8n Docs: XML | 2026-10-14 |
| Google Sheets ノードに Get Row(s)・Update Row・Append Row などの操作があること | n8n Docs: Google Sheets | 2026-10-14 |
| Basic LLM Chain がプロンプトを決め、出力の形を求めるときにパーサーをつなぐこと | n8n Docs: Basic LLM Chain | 2026-10-14 |
| JSON の例から生成するとすべての項目が必須になること | n8n Docs: Structured Output Parser | 2026-10-14 |
| Gmail ノードの Send a message と、既定で自動送信の一文が付くこと | n8n Docs: Gmail message operations | 2026-10-14 |
作業を中止するかの判断と、社内の中止基準の値は、自社の安全衛生の体制で決めてください。 本記事は気象庁・厚生労働省・e-Gov・n8n の公開ページで確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1553)についてのご相談はこちらから。
