応用情報技術者試験 過去問 2025年(令和7年) 春期 午後 問7

電動キックボードのシェアリングシステム

G 社は,電動キックボード(以下、電動KBという)のシェアリングシステム(以下、本システムという)を開発している。本システムは,利用者に対し,電動 KB の貸出し,使用及び返却をさせるものである。本システムを利用する場合には,利用者が事前にスマートフォン(以下、スマホという)に専用アプリケーションプログラム(以下、アプリという)をインストールし,利用者情報を登録して,利用者 ID を取得しておく必要がある。電動 KB の外観を図 1 に,本システムの主な構成を図 2 に,本システムの主な構成要素を表 1 に示す。

電動 KB の外観
図1 電動 KB の外観
本システムの主な構成
図2 本システムの主な構成
表1 本システムの主な構成要素
構成要素名 機能概要
制御部
  • 電動 KB 全体を制御する。
  • 利用者のアクセルレバー(以下,アクセルという)の操作量を計測し,アクセルの操作量に応じてモーターのトルクの発生を制御する。
  • その他,ライトの点灯制御,BLE 通信などの電動 KB に必要な処理を行う。
駆動部
  • 制御部から情報を受信し,車体を前方に加速するためにモーターの回転を制御する。
  • 車輪ロック機構があり,貸出しされていないときは車輪をロックする。
表示部 制御部表面のディスプレイに,電動 KB の車体の速度(以下,現在速度という)及び電池残量を表示する。
ブレーキ 利用者がブレーキレバーを握ると作動し,機械的に車体を減速させる。
速度センサー 現在速度を計測する。
ライト 前照灯,尾灯,最高速度表示灯,制動灯などで構成され,用途に応じて点灯,消灯する。
電池 制御部,駆動部,表示部,速度センサー,ライトなどに電力を供給する。
スマホ
  • アプリで,次のことを行う。
  • - スマホの位置の情報(以下,位置情報という)を使用する。
  • - インターネットを介して,管理サーバとメッセージをやり取りする。
  • - 電動 KB の制御部と BLE で通信し,メッセージをやり取りする。
管理サーバ 利用者情報,電動 KB の情報の管理などを行う。

[本システムの利用方法]

利用開始前の電動 KB は,車輪がロックされた状態で,専用の貸出し用及び返却用の駐車スペース(以下,ポートという)に,駐車している。本システムには,複数のポートがあり,各ポートで電動 KB の貸出し又は返却を行う。なお,ポート以外の場所では,電動 KB の貸出し及び返却を行うことはできない。電動 KB の利用手順を表 2 に示す。

表2 電動 KB の利用手順
利用方法 詳細手順
利用者が電動 KB を借りる場合 ① 利用者がポートに駐車している任意の電動 KB に近づき,アプリで電動 KB の車体に貼られている 2 次元バーコードから,車体の識別情報である車体 ID を読み取る。
② アプリで電動 KB を返却するポート(以下,返却ポートという)を予約する。
③ アプリで「貸出し」を選択する。その結果,車体 ID に対応した電動 KB の車輪のロックが解除される。
利用者が電動 KB で走行する場合 ① 利用者は,手押しで初速をつけて,地面を蹴りながら電動 KB に乗車する。
② 利用者がアクセルを押すと,アクセルの操作量に応じて,電動 KB はモーターのトルクを発生させて最高速度(20km/時)まで加速することができる。
③ 利用者は,アクセルを用いて加速,又はブレーキレバーを用いて減速させて電動 KB を操作する。
利用者が電動 KB を返却する場合 ① 予約した返却ポートに,利用中の電動 KB を駐車する。
② アプリで「返却」を選択する。その結果,利用中の車体 ID に対応した電動 KB の車輪がロックされる。

[電動 KB の状態の遷移]

電動 KB の状態の遷移を図 3 に示す。

電動 KB の状態の遷移
図3 電動 KB の状態の遷移

注記 簡略化のために,一部の状態だけを図に示している。

[電動 KB の動作概要]

電動 KB の動作概要を次に示す。

  • 利用開始前の電動 KB は,車輪をロックした待機中状態でポートに駐車している。
  • 待機中状態で利用者がアプリで「貸出し」を選択すると,電動 KB はアプリを介した管理サーバからの指示によって車輪のロックを解除して停止中状態になる。
  • 停止中状態で手押しなどによって 0.3km/時以上になると,走行準備状態になる。
  • 走行準備状態で手押しなどを続けて 3km/時以上になると,加速可能状態になる。
  • 加速可能状態でアクセルを押すと,走行中状態になり次の動作のいずれかを行う。
    • - 現在速度が最高速度未満の場合は,アクセルの操作量に応じて,モーターのトルクの発生を制御する。
    • - 現在速度が最高速度に達した場合は,最高速度表示灯を点灯させ,モーターのトルクを抑制する。
  • 走行中状態でアクセルを戻すと,加速可能状態になる。
  • 走行準備状態,加速可能状態,走行中状態で 0.1km/時未満が一定時間継続すると停止中状態になる。
  • 停止中状態で利用者がアプリで「返却」を選択したとき,管理サーバは(ア)ある情報を確認してから,返却の指示を行う。電動 KB はアプリを介した管理サーバからの指示によって車輪をロックし,待機中状態になる。
  • 状態に関係なく,ブレーキレバーを握ると,機械的にブレーキが掛かる。

[本システムで使用する主なメッセージ]

本システムで使用する主なメッセージを表 3 に示す。

表3 本システムで使用する主なメッセージ
メッセージ名 送信元 送信先 構成データ名
貸出し要求 アプリ 管理サーバ 車体 ID,利用者 ID,返却ポート,位置情報
貸出し指示 管理サーバ アプリ 車体 ID,利用者 ID
貸出し応答 アプリ 管理サーバ 車体 ID,利用者 ID,車輪ロック解除結果(成功・失敗)
返却要求 アプリ 管理サーバ 車体 ID,利用者 ID,位置情報
返却指示 管理サーバ アプリ 車体 ID,利用者 ID
返却応答 アプリ 管理サーバ 車体 ID,利用者 ID,車輪ロック結果(成功・失敗)
車輪ロック指示 アプリ 電動 KB 車体 ID
車輪ロック応答1) 電動 KB アプリ 車体 ID,結果(成功・失敗)
車輪ロック解除指示 アプリ 電動 KB 車体 ID
車輪ロック解除応答2) 電動 KB アプリ 車体 ID,結果(成功・失敗)
現在情報 電動 KB アプリ 車体 ID,電動 KB の状態,現在速度

注1) 車輪ロック応答の結果が失敗のときは,車輪ロック指示のメッセージを 1 回だけ再送する。

注2) 車輪ロック解除応答の結果が失敗のときは,車輪ロック解除指示のメッセージを 1 回だけ再送する。

[電動 KB の制御部のソフトウェア構成について]

電動 KB の制御部では,リアルタイム OS を使用する。制御部の主なタスクの処理概要を表 4 に示す。

表4 制御部の主なタスクの処理概要
タスク名 処理概要
メイン
  • 電動 KB の状態管理を行い,10 秒間隔で「現在情報」をアプリに送信する。
  • アプリからメッセージを受信し,次のことを行う。
    • - 「車輪ロック解除指示」を受信すると,車輪のロックを解除し,状態をb状態にして,「車輪ロック解除応答」をアプリに送信する。
    • - 「車輪ロック指示」を受信すると,車輪をロックし,状態を待機中状態にして,「車輪ロック応答」をアプリに送信する。
  • 現在速度及び電池残量の情報を表示タスクに通知する。
  • cをモータータスクに通知する。
速度計測
  • 速度センサーで計測した現在速度を,dタスクとモータータスクに通知する。
  • メインタスク,アクセルタスク,速度計測タスクの情報から,モーターのトルク・回転数を制御する。
モーター メインタスクから現在速度及び電池残量の情報を受けると,現在速度及び電池残量をディスプレイに表示し,最高速度表示灯を制御する。
表示 アクセルの操作量を計測し,メインタスクとモータータスクに通知する。
アクセル
出典:令和7年度 春期 応用情報技術者試験 午後 問7