2018年2月23日金曜日

エンベデッド対策 穴埋め問題

穴埋め問題は空欄に入る字句が問題文の中で使われているケースと使われていない場合がある。

まずは問題文の中に回答となりうる字句があるか考えてみることが大事。

状態遷移の穴埋め問題がよく出る。
注意点として、「タスク名で答えよ」と問われたとき、問題のタスク一覧の書かれている通りに回答すること。※「XXXXタスク」と答えず、「XXXX」と答えるようにする。

2018年2月20日火曜日

エンベデッド対策 割り込みの問題

割り込みの問題は優先度が高い割り込みが発生しないかどうかを気をつけて、割り込みが発生した場合にはその処理時間の最悪値を求める問題が出題されます。
割り込み以外にも計算が多く、結構大変です。MHzとか出てくると心が折れる。


【問】掃除機の動作について、MPUは前方との壁との間隔が5cm以内になった事を検出した時に壁センサIFによる割り込みを発生させる場合、走行用モータが停止するまでに掃除機は何cm進むか?小数第2位を四捨五入して小数第1位まで求めよ。

・壁センサIFの優先度は4。割り込み実行ステップ数は5kステップ。
・クロック周波数は2MHz。
・2クロックで1ステップを実行する。
・割り込みオーバヘッドは200クロック。
・優先度1の定周期タイマ割り込みのステップ数は4kステップ。
・MPUが停止指示を出して停止するまでの時間は50ミリ秒。
・掃除機は25cm/秒で進んでいる。

【解】
・壁センサ割り込みのクロック数
 5k[ステップ]×2[クロック]=10k[クロック]
 200[クロック]+10k[クロック]=10.2k[クロック]
・1クロックの時間
 1÷2[MHz]=0.5[マイクロ秒]
 10.2k[クロック]×0.5[マイクロ秒]=5.1[ミリ秒]

・定周期タイマ割り込みの処理時間を考慮する
 4k[ステップ]×2[クロック]=8k[クロック]
 200[クロック]+8k[クロック]=8.2k[クロック]
 8.2k[クロック]×0.5[マイクロ秒]=4.1[ミリ秒]

・割り込みが入ってから停止処理をする時間
 5.1m[秒]+4.1[ミリ秒]=9.2[ミリ秒]
 50[ミリ秒]+9.2[ミリ秒]=59.2[ミリ秒]

 25[cm/秒]×59.2[ミリ秒]
 =25[cm/秒]×0.0592[秒]
 =1.48[cm]  
 =1.5[cm] ※小数第2位を四捨五入する














・優先度1の定期的タイマ割り込みも行われている。




2018年2月18日日曜日

エンベデッド対策 単位の問題

エンベデッド試験を何度か受けて、いつも午後問題で失敗しているので、今回は午後の学習に力を入れて試験に臨んでみたいと思います。

エンベデッドの午後試験ではこれらの単位が計算で使用されるようです。
どれもよく使う単位ではありますが、いざ問題に出てくると戸惑うものもあるので、復讐しておきます。

ーーーーーーーーーーーーーーーーーーーーーーー
時間      1時間
長さ      m(メートル)
速度      m/秒
エネルギー   J(ジュール)
電圧      V(ボルト)
電流      A(アンペア)
電力      W(ワット)=V×A=J/秒
電池容量    Ah(アンペアアワー)
周波数     Hz(=1/秒)
情報量     1バイト=8ビット
データ転送速度 ビット/秒
ーーーーーーーーーーーーーーーーーーーーーーー

練習問題を解いてみます。単位の関係がわかっていれば解ける問題ですが、
この手の問題は桁を間違えたりすることが多く、気をつける必要があります。

【問】以下の条件の時の時速は何[km/時]か、整数で求めよ。
・走行用モータとタイヤの減速ギア比は1:5の関係を持っている。
・タイヤが1回転すると2[m]移動することができる。
・走行用モータが2500[回転/分]である。

【解】
・走行用モータの1回転の時間
  1[分]÷2500[回転/分]=0.0004[分]
・タイヤ1回転かかる時間
  0.0004[分]×5[倍]=0.002[分]
・タイヤの移動速度
  2[m]÷0.002[分]
  =(2[m]÷1000)÷(0.002[分]÷60)  ※単位をkm/時の形に合わせる
  =60(km/時)

【問】掃除機の動作について、MPUは前方との壁との間隔が5cm以内になった事を検出して走行用モータに停止指示を出力して壁に衝突しないようにするには壁センサIFは何ミリ秒ごとに間隔を測定すべきか。小数第一まで求めよ。

・MPUが停止指示を出してから停止するまで50ミリ秒かかる。
・掃除機は25cm/秒で進んでいる。
・MPUは100ミリ秒ごとに壁センサIFのレジスタから対象物との間隔を読みだす。

【解】
・掃除機が停止するまでに進んでしまう時間。
 25[cm/秒]×50[ミリ秒]
 =25[cm/秒]×0.05[秒]=1.25[cm]
・MPUの周期の最悪値
 25[cm/秒]×100[ミリ秒]
 =25[cm/秒]×0.1[秒]=2.5[cm]
・停止すべき壁までの距離の余力
 5[cm]-1.25[cm]-2.5[cm]=1.25[cm]
・余力内で停止する周期
 1.25[cm]÷25[cm/秒]=0.05[秒]=50.0[ミリ秒]
 
【問】掃除機を15分間連続して使用したい。この場合に必要な電池の容量は何Ahか?
   小数第2位を四捨五入して小数第1位まで求めよ。
  ・電池電圧は30Vで一定。
  ・走行用モータは左右で2つ。消費電力は各25W。
  ・吸引用モータの消費電力は250W。

【解】
 ・消費電力の合計
 25[W]+25[W]+250[W]=300[W]
 ・15分を時間に直すと0.25[h]
 300[W]×0.25[h]=75[Wh]
 ・電圧[V]と電力[Wh]から電流[Ah]を求める。
 75[Wh]÷30[V]=2.5[Ah]















2018年1月30日火曜日

ソフトウェア開発力強化セミナーin 仙台 ~要件定義と定量的マネジメントの勘どころ~

IPAが主催するセミナーが仙台で行われるということで参加してきました。

ソフトウェア開発力強化セミナー

■日時   2018/01/30 14:00~17:00
■場所   ハーネル仙台
■主催団体 IPA

■聞きたかったこと
・要件定義を現状より良くするような工夫はあるか?
・プロジェクト管理を現状より良くするような工夫はあるか?

■内容(自分が受け取った感覚で整理してます)
ーーーーーーーーーーーーーーーー
・IPA/SEC研究所 山本さん
 要件定義を行う上でバグが流出しない為の工夫、企業が行っている事例の話。

・IPA/SEC技術本部 山下さん
 プロジェクト管理を見える化して定量的な情報を元にプロジェクト管理する事例の話。
ーーーーーーーーーーーーーーーー

■まとめ
・要件定義を現状より良くするような工夫はあるか?
→取捨選択が難しい非機能要件についてIPAがまとめた一覧があって、要件定義の際に役立ちそうだった。NTTの事例で自然言語の表現方法にルールを定義することで、誤解を生まないようにしている。この工夫が活用できそうだと思った。

・プロジェクト管理を現状より良くするような工夫はあるか?
→レビュー時間の妥当性については暗黙知的なところがあると感じていたので、一定の指標をもってゾーン分析して、その結果をもとに分析を行うようにすればこれまで以上に適格な分析ができるように感じた。ほかにもIPAではソフトウェア開発の指標値をデータ白書としてまとめているのでその数値情報が目標値設定の参考になりそうだと思った。

2018年1月28日日曜日

東北デベロッパースカンファレンス2018

SENDAI IT COMMUNE で頂いたチラシの中にもう一件、セミナーの情報がありこちらも面白そうなので参加してきました。

東北デベロッパースカンファレンス2018

■日時   2018/01/27 14:00~17:00
■場所   東北大学川内キャンパス
■主催団体 東北デベロッパーズコミュニティ

■聞きたかったこと
・注目の技術トレンドとは何か?
・IoTに着目した時にどんなソリューションがあるか?

■内容(自分が受け取った感覚で整理してます)
ーーーーーーーーーーーーーーーー
・JAVAユーザ会 丸山さん
 ボイスアシスタンスの進化でナレッジ応答が可能になり、AI技術につながっていく話。

・ソラコム 松下さん
 IoTとクラウドを連携させる為に必要なものとその方法についての話。

・オプト 佐藤さん
 ビックデータを扱う際にAmazonのクラウドを使うと効率的に行うことができる話。

・クラウドエース 吉積さん
 クラウドサービスの比較、ほぼ横ばいの中でGCPはハード性能、価格が有意である話。
ーーーーーーーーーーーーーーーーー 

■まとめ
・注目の技術トレンドとは何か?
 →グーグルスピーカが普及することによりクラウドを活用して受け答えができるよう になっていってAI化が進んでいくんじゃないだろうかというところ。
・IoTに着目した時にどんなソリューションがあるか?
 →具体的なソリューションは聞けなかったが、IoTデバイスも、クラウドサーバも、通信手段も簡単に導入することができるようになっているまず作ってみてサービスを模索するのがよさそうだと思う。

2018年1月26日金曜日

タガヤス Xamarinを学んでみよう

SENDAI IT COMMUNE で頂いたチラシの中に仕事の後に気軽に行けそうなセミナーがあったので参加してきました。

Xamarinを学んでみよう【タガヤス その3】

■日時   2018/01/25 19:00~21:00
■場所   AERE 6階
■主催団体 タガヤス  グレープシティ

■聞きたかったこと
・Xamarinってどんな感じなんだろう?
・アプリ開発してる人たちってどんな環境で作ってるんだろ?

■内容(自分が受け取った感覚で整理してます)
ーーーーーーーーーーーーーーーー
・グレープシティ株式会社の福井さん
 Visual Studioを使ってWindows上で動くアプリを作るデモ。

・グレープシティ株式会社の福地さん
 Xamarinを使って、別々のOSで動くアプリを作るデモ。

・グレープシティ株式会社の氏家さん
 Xamarinを使ってOSを作って、クラウドに情報を収集するアプリのデモ。
ーーーーーーーーーーーーーーーーー 

■まとめ
・Xamarinってどんな感じなんだろう?
 ⇒Xamarinは他のOSでも動くようにAPIを補完してくれるラッパーのようなもので
  アプリ開発に慣れている人は効率的にプログラミングできるかもしれないけど、
  グラフィカルなイメージが無く、コードイメージでコーディングしなくてはいけ
  ないので初心者には優しくないかも。

・アプリ開発してる人たちってどんな環境で作ってるんだろ?
 ⇒それぞれのOSに向けた統合開発環境(Xcode、Android Studioなど)を使っている
  と思うが、今日の登壇者はVisual Studio + Xamarin の開発環境を使っている
  ようだった。


SENDAI IT COMMUNE meetup #02


仙台で開催しているセミナーに参加してみたので、メモとして記録しておきます。

SENDAI IT COMMUNE meetup #02

■日時   2018/01/20 13:00~17:30
■場所   一番町DATE ONEビル
■主催団体 TECH PLAY

■聞きたかったこと
・クラウドってなんだろう?
・エンジニアがビジネスを生み出すって具体的にはどういうこと?
・他社のエンジニアはどんなツールを使って何に興味があるんだろう?

■内容(自分が受け取った感覚で整理してます)
ーーーーーーーーーーーーー
・楽天の半田さん
 楽天セールの裏で「2重価格問題」を解決するために仙台の開発部隊が頑張った話。

・トレタの増井さん
 飲食店の店舗側が使う予約管理をIT化して効率化した話。

・トレジャーデータの田籠さん
 大きな作業をするときは作業を細分化した方がうまくいくという話。

・メルカリのシンメタルさん
 クラウドの先がどうなっているか、どのように活用するとうまくいくかの話。

・サーバワークスの赤塚さん
 世界でもっとも使われているAWSの事、その技術者がどんな活動をしているのかの話。

・マイクロソフトの畠山さん
 マイクロソフトのクラウドを活用すると色々なAPIが使える。このAPIがすごい話。
ーーーーーーーーーーーーーーーーー

■まとめ
・クラウドってなんだろう?
 ⇒アプリとかIoTとかで収集した情報をクラウドに蓄積してその情報を活用して
 色々やる事。音声認識や画像認識も進化しているので蓄積したデータを活用の幅
 も広がっており、新たなビジネスの可能性がある。

・エンジニアがビジネスを生み出すって具体的にはどういうこと?
 ⇒アプリやガジェットを作るエンジニアがクラウドを活用することでそれが
 ビジネスになる可能性がある。何が実現可能な事なのかを知っているエンジニア
 の方がビジネスを生み出しやすいってこと。

・他社のエンジニアはどんなツールを使って何に興味があるんだろう?
 ⇒クラウドを活用したことがないので、身近なものが全然なかった。
 クラウド関係のサービスの話を聞けたので時間があるときに調べてみようと思った。