Slide 1

Slide 1 text

あいてる隙間があったら、 ついカッとなり やってしましました @aramsan 2019/10/25 Gaiax Tech Meetup 趣味でそこまでやっちゃうのか!趣味テックLT大会

Slide 2

Slide 2 text

峯 荒夢(@aramsan)
 株式会社ガイアックス 開発部
 ブロックチェーン担当マネージャー
 
 先行技術開発チーム 「さきがけ」 リーダー
 ソーシャルメディアマーケティング事業部 開発リーダー
 TC307 国内検討委員(ブロックチェーンISO標準化検討委員)
 
 2000年 ソニー子会社に入社
   ソフトウェアエンジニアとしてPCの設計を行う 
 
 2013年 株式会社ガイアックス入社
 


Slide 3

Slide 3 text

© Gaiax Corporation 3 11/1,8 プロトタイプ体験会
 
 ブロックチェーンを使った応援を力に変えるサービス
 
 @cheerfor_
 


Slide 4

Slide 4 text

Copyright © Gaiax Co.Ltd. All rights reserved.
 4
 基本用語から最新規格までわかりやすく
 ブロックチェーン用語集
 2019.9.20出版
 インプレスR&D社
 峯 荒夢 著
 60分でわかる!
 ブロックチェーン最前線
 2018.5.25出版
 技術評論社
 峯 荒夢 監修
 書籍執筆


Slide 5

Slide 5 text

世界の 新しい常識を 作る

Slide 6

Slide 6 text

引用元:https://matome.naver.jp/odai/2142667669338056901/2142668610350461603 https://matome.naver.jp/odai/2141545176970079901 中学生時代は・・・

Slide 7

Slide 7 text

BASIC って遅いよねー

Slide 8

Slide 8 text

スピード求めるなら アセンブラだよねー

Slide 9

Slide 9 text

中2でハンドアセンブルを はじめました・・・ ハンドアセンブル  ニーモニックっで書かれたアセンブラのプログラムを、  16進数の羅列に手動で翻訳する作業のこと

Slide 10

Slide 10 text

そんな自分が
 大人になって
 車を持ちました


Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

サイト作って、 オーナーズクラブ立ち上げて いろんな情報が入ってくる 楽しい

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

ところでみなさん 隙間ってあいてたら とっても気になりますよね?

Slide 15

Slide 15 text

すきま

Slide 16

Slide 16 text

ある日うちの車にも隙間が空きました

Slide 17

Slide 17 text

すきま

Slide 18

Slide 18 text

すきま 隙間は埋めたいと ついカッとなって しまった

Slide 19

Slide 19 text

何か表示しよう

Slide 20

Slide 20 text

うちの車のスピードメーターは 199km/hまでしか表示できない

Slide 21

Slide 21 text

200km/h以上表示できる メーターはないものか?

Slide 22

Slide 22 text

車のスピードを測るには? 車の進んだ距離は車速パルスというものを数えることで計測できます。 1マイル進む間に1000回センサーが回転する仕組みになっています。 うちの車は1回転する間に4回パルスを発生させます。 1マイル進む間に4000回のパルスを発生させます。 このパルスの回数を計測進んだ距離を時間で割れば速度が測れます。

Slide 23

Slide 23 text

はじき はやさ x じかん = きょり はやさ = きょり / じかん 1パルスで進む距離は 1.60934 km / 1000 / 4 = 0.000402335 km はやさ = 0.000402335 x パルス数 / 時間

Slide 24

Slide 24 text

回路図

Slide 25

Slide 25 text

出来上がったもの

Slide 26

Slide 26 text

ソフトウェア マイコンはPIC 言語はアセンブラ Cでも書けるが あえてアセンブラ

Slide 27

Slide 27 text

しかし・・・ アセンブラは割り算が苦手 割り算するとコードが長くなる・・・・ はやさ = 0.000402335 x パルス数 / 時間 が、めんどくさい・・・・

Slide 28

Slide 28 text

工夫した点 割り算を排除 はやさ = 0.000402335 x パルス数 / 時間 時間が、ガン 時間を1にすれば割り算必要なくなる でも、1時間長過ぎる・・・

Slide 29

Slide 29 text

パルス数 = はやさ とならないか? 時間内のパルス数がそのまま時速となるような条件を求める 0.000402335 km 進んだら時速1km/hとなる時間

Slide 30

Slide 30 text

じかん = きょり / はやさ 0.000402335 km 進んだら時速1km/hとなる時間は 1.60934 km / 1000 / 4 = 0.000402335 km 時間 = 0.000402335km / 1km/h = 0.000402335 h = 1448.306msec →調べたところ、1マイル4000パルスではなく、わざと速めの速度 が表示されるるよう4000以上のパルスを出力する 1448.306msec→1413msecとするときれいな数字が出る

Slide 31

Slide 31 text

速度計測の最終仕様 1413msec間のパルスをカウントし、 その数値をそのまま表示すればスピードメーターとできる 2回なら、2km/h 100回なら、100km/h 割り算することなく実装できた!

Slide 32

Slide 32 text

1413msec微妙じゃない? ここでアセンブラが活躍  アセンブラは1命令の実行時間が決まっている  実行時間を調整して 78.5msecのループを作り  18回このループが実行されると 1413msecが取れる  この間のカウントを表示すればスピードメーターとなる 実行時間が測れちゃうアセンブラ最高!

Slide 33

Slide 33 text

出来上がったもの

Slide 34

Slide 34 text

理論上時速765km/hまで 表示できるスピードメーター

Slide 35

Slide 35 text

隙間が埋まった!

Slide 36

Slide 36 text

世界の 新しい常識を 作る

Slide 37

Slide 37 text

趣味でエンジニアリングすれば アセンブラを学べて スピードメーターが作れる! 世界の新しい常識!

Slide 38

Slide 38 text

Enjoy Driving! Enjoy Engineering!