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
警備ロボットの運用におけるAWSの活用紹介 / Security Guard Robot Se...
Search
Shinichi Ishimura
June 17, 2020
Technology
0
1.2k
警備ロボットの運用におけるAWSの活用紹介 / Security Guard Robot Service on AWS
Shinichi Ishimura
June 17, 2020
Tweet
Share
More Decks by Shinichi Ishimura
See All by Shinichi Ishimura
SEQSENSEにおけるAWSを活用した 自律移動ロボットの管理手法 / AWS Summit Tokyo 2023
kamatama41
0
2.1k
Other Decks in Technology
See All in Technology
3D生成AIのための画像生成
kosukeito
2
600
10ヶ月かけてstyled-components v4からv5にアップデートした話
uhyo
5
460
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
120
Part1 GitHubってなんだろう?その2
tomokusaba
1
520
本当に必要なのは「QAという技術」だった!試行錯誤から生まれた、品質とデリバリーの両取りアプローチ / Turns Out, "QA as a Discipline" Was the Key!
ar_tama
9
2.9k
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
150
大規模サーバーレスプロジェクトのリアルな零れ話
maimyyym
3
150
問 1:以下のコンパイラを証明せよ(予告編) #kernelvm / Kernel VM Study Kansai 11th
ytaka23
3
360
Serverlessだからこそコードと設計にはこだわろう
kenichirokimura
2
520
MySQL Indexes and Histograms – How they really speed up your queries
lefred
0
150
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
200
Microsoft Fabric vs Databricks vs (Snowflake) -若手エンジニアがそれぞれの強みと違いを比較してみた- "A Young Engineer's Comparison of Their Strengths and Differences"
reireireijinjin6
1
140
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
179
53k
Designing for Performance
lara
608
69k
Code Review Best Practice
trishagee
67
18k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Adopting Sorbet at Scale
ufuk
76
9.3k
It's Worth the Effort
3n
184
28k
GraphQLの誤解/rethinking-graphql
sonatard
71
10k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.8k
Building an army of robots
kneath
305
45k
How to Ace a Technical Interview
jacobian
276
23k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
4 Signs Your Business is Dying
shpigford
183
22k
Transcript
警備ロボットの運用における AWSの活用紹介 IoT@Loft #11 スマートビルディングにおけるIoT活用の取り組み
自己紹介 石村 晋一 (@kamatama41) • 2019年4月 SEQSENSE入社 • クラウドシステムのバックエンドを主に担当 •
1児 (3歳) の父 • 趣味: 麻雀 ゴルフ プレミアリーグ カラオケ
会社紹介 • 2016年10月 創業 • 2018年6月 シリーズAファイナンス実施 (三菱地所・TIS・ジャフコ) • 2019年8月
商用化開始 • 2020年1月 成田空港第3ターミナル導入 2020年6月現在、成田空港含む5サイトで運用中
会社紹介 京急アクセラレータープログラムに採択されました https://robotstart.info/2020/06/02/keikyu-accele-3rd.html
SQ Guard: サービス概要 • ロボット (SQ-2) を建物に導入し、警備業務を行う • 具体的な業務としては、巡回・立哨 業務
• 巡回 所定のコースを巡回し、不審物が無いか、備品のチェックなどを行う • 立哨 所定の位置に立ち、周辺を監視したり、問い合わせに答えたりする
SQ-2: SECURITY ROBOT
今日話すこと • SQ Guardのサービスの特徴的なモジュールの紹介 • その中でAWSのサービスをどう活用しているか • 作成したOSSプロダクトの紹介 • 現状の課題
話さないこと • SQ-2の制御プログラムについての詳細 (ROSなど) • SQ-2のメカニックの詳細
システム全体図
sq-agent
sq-agent • SQ-2上で動くエージェントプログラム • Go言語で書かれたバイナリをDockerコンテナ上で実行 ◦ これ以外のロボット上のプログラムもほぼ全て Dockerコンテナで実行している • ロボットの情報を収集し、AWS
IoTにMQTTのメッセージとして送信 ◦ ロボットの状態 (バッテリー残量、電波状況、自己位置など) ◦ ストリーミング配信の状況 など • クラウドからのMQTTのメッセージを受けて、所定のプログラムを実行する ◦ 巡回開始・中断 ◦ カメラ撮影 など
sq-agent SQ-2 AWS IoT publish subscribe sq-agent ・・・
aws-iot-device-sdk-go • https://github.com/seqsense/aws-iot-device-sdk-go • Go言語用のAWS IoT CoreのMQTTクライアントライブラリ • Ver4.0を開発中 ◦
Device Shadow, Secure Tunneling 対応
Event processor
Event processor • AWS SQSのメッセージをポーリングして処理するためのWorker ◦ AWS IoTが受けたメッセージは一旦 SQSにキューイングされる •
受けたメッセージの内容に応じて所定のJobを実行 ◦ DBを更新 ◦ 他の内部サービスへ処理を委譲 ◦ Slackへ通知 ◦ etc...
SQ Console
SQ Console • 現場の警備員が利用するロボット警備業務用のWebアプリケーション • ロボットの状態確認 ◦ バッテリー残量、オンライン/オフライン など •
ロボットの操作 ◦ 巡回開始・中断 など • ロボットからの動画配信チェック • 巡回結果のチェック • AWS WAFを使って不正アクセスをBlock
SQ Console
SQ Console
Elevator system gateway
Elevator system gateway • ビルのエレベータを操作するためのプロキシサーバ ◦ 三菱電機さんのエレベータと連動中 ◦ https://www.nikkei.com/article/DGXMZO53304410T11C19A2000000/ •
ロボットからの乗車要求を受けて、エレベータ側と通信を行う • 内部的なプロトコルはgRPC、エレベータとはMQTTでやりとりを行う
Video gateway
Video gateway • ロボットからSRTPで配信される動画を受けて、ブラウザにWebRTCで配信 する中継サーバ • Go製のWebRTC API実装であるOSS pion/webrtc を利用して構築
• 配信と同時にロボットから受け取った動画データをKinesis Video Streams (KVS) に保存し、過去の動画として配信している ◦ GoからKVSにデータをuploadするためのライブラリも自社で開発 ◦ GoでMatroska (EBML) コンテナをEncode/Decodeするためのライブラリを OSS化 ◦ https://github.com/at-wat/ebml-go
Video gateway video gateway SRTP WebRTC Upload Kinesis Video Streams
現状の課題
課題1: ロボットのデプロイメント自動化 ロボット上のアプリケーションを更新する際はエンジニアがDocker pull & restartを 行っているのを自動化 ➔ OTAアップデートの仕組みを構築中 ステージング環境から本番環境の切り替え
(証明書を入れ替えてAWSアカウントを切 り替える作業) の自動化 ➔ AWS IoT JobsやMulti-Account registrationを検討中
課題2: 動画を使った異常検知 ストリーミング動画内に不審物や施設の異常などが映っていることを自動で検知した い ➔ Kinesis Video StreamsとRekognitionとの連携や、エッジデバイス (ロボット側) での推論実行を検討中
まとめ • SQ-2の各種モジュールの紹介 ◦ sq-agent ◦ Event processor ◦ SQ
Console ◦ Elevator system gateway ◦ Video gateway • 現状の課題の紹介 ◦ デプロイメントの自動化 ◦ 動画を使った異常検知
最後に宣伝 警備ロボットを一緒に開発する仲間を募集中です! http://wantedly.com/companies/seqsense/projects WantedlyでSEQSENSEを検索 • クラウドエンジニア • ロボティクスソフトエンジニア • ハードウェアエンジニア
• AIエンジニア