MawaLog

一日一日、楽しく生きる。技術と音楽が好き。

人工衛星開発プロジェクト『RymanSat』技術部門参加にあたって今後の目標。KiCadで基盤を起こせるようになる。

人工衛星をつくる−設計から打ち上げまで−

人工衛星をつくる−設計から打ち上げまで−

人工衛星開発プロジェクト『RymanSat』に加入

今年今月に飛ぶのが00号機という初号機で、以降、01号、02号とあるのだが、自分は01号通信機開発班、02号電源開発班の開発チームに加入することにした。最初はソフトウェアで貢献しようと思っていたのだが、いつもの気まぐれ好奇心からほぼ初心者であるハードウェアにチャレンジすることにしてみた。うーん、どこまで行けるかな・・・まあ行けるところまで・・・・・・ソフトウェアの開発は独学で自分が満足できる程度で習熟できたと思っているので、行けるような気もしてる、頑張ろう^^

中期目標

  • KiCADに習熟する

工場で先輩スタッフの方からレクチャーいただいたところ、電子回路を起こす仕事が01号機ではメインになりそうだったのでまずはこのKiCADというものに習熟する必要があるとのことだったのでそこからスタートする。

  • 回路図完成品から基盤を起こせるようになる。

直近の目標

このあたりで簡単な回路を書いて基盤をおこせるようになる

www.slideshare.net

qiita.com

今年も残り3ヶ月なので技術修行の進捗を振り返ってみる

今日は雨のせいで

ウツです・・・毎度雨が降るというか低気圧の日は気分があんまりよろしくない。なんででしょう・・・と、いうわけで気分があがるようなことを書こうかなと思い、今年の目標どのくらい進んだかチェックしてみようと。

目標

かなり大きめにかきました。来年もそのようにする予定。

k-mawa.hateblo.jp

反省

反省してみた。割といいペースかなと思います。なんだかざっくり目標にアウトプットがうまく全部包含できてないので全部まとめてカウントにして水増しします苦笑

達成してるもの(11/23)

Linuxの理解をもう少し深める

○。まあ1月よりは深まったとは思うから○。

C、C++ を多少遊び程度にいじってみる

○。遊びでいじったね、CTF4bはC結構書いたっけ。まあ○

xRで色々つくる。業務用アプリ〜趣味のゲームまで色々。

◎。一個ゲーム作ったと言って良い実装程度だからこれは努力賞で◎でいいや。甘い笑

ハードウェアの理解を深める。GPUなど。余裕があればアセンブラの勉強なども頑張ってみたい

◎。やってるね!アセンブラも多少学んだし、GPUセットしたし、人工衛星開発にも参加し始めたし!来年は低レイヤもうちょっとやれそうかな^^

3Dモデルを自分でもちょこっと作ってみる。blenderなど。

◎。scrpitなんとか~mixamo、blenderのさわりはいじってUnityで踊らせられたのでOK。リギングとかデータ・フォーマットの知識が得られたのでUnityのアセットの作られ方の理解が深まったので◎

3Dゲーム最低1個は公開する

◎。作ったね、ZombieLand!

機械学習再び勉強再開。大きめのデータセットで学習することを実施

◎。サイファー50ってのをtensorflow-cpuとgpu両方でまわしたから◎でいいかな。今年の残りで実用性を高める。

競技プログラミングに初心者コース程度は参加してみる。

◎。ctf4b出たからOK。

MRアプリ1つ以上

◎。ゲーム実装した。

VRじゃなくてもいいので3Dゲーム1つ以上

◎。これも重複だけど、作った。

GPUセッティングからのデータ・セットの機械学習環境>構築

◎ NVIDIAgtx1080をセッティングしてtensorflowコードも動いたからOK

未達成で今年中にできそうなもの(6/23)

Docker使いこなしレベルを上げる。自分でローカル環境をパパッとイメージにしてDockerHubで出し入れできるなど。

△。これはできると思う。

Dockerで自分でイメージを1個以上つくって、自分の仕事に役立てる

△。上と同じだけどできるはず。

Arduinoでデバイス1個実装

△。AruduBoyのキットかってあるからワンチャンあり。

余裕があればKaggleに挑戦1回以上

△。アカウントはできた(5分・・・)。一個投稿はできそう。

余裕があればソフトウェア関連の論文読んでみることに挑戦

△。謎・・・論文読み会一回行ってみよっかな。

Ng先生続編など履修

△。そこまで行けるかな・・・行けたらいいけど、年末まで予定が多すぎて無理かも・・・導入版は再復習したぜ^^v
だから地盤は整っているので△

未達成で今年やるか不明(6/23)

VRゲーム1つ以上

☓。ハードとか勉強の方向性が違ってきたからやらないね。

Apache、Nginxの理解を深める

☓。これはなにも進んでない。去年と同じ程度の知識。

ラズパイ、Arduinoなどいじりをもうちょっと加速。ROSの理解を深め、実装を行う。ひとつ出展できるようなデバイスをつくる。

Aruduinoは年内作品1個ありえる。でもROSまで行かないから☓。全然やってませんね、ROS。本は買ってあるのだけど・・・

ラズパイ×ROSでデバイス1個実装

☓。ちょっと遠いかな・・・他の分野優先・・・

ラズパイでデプロイパッケージを使わず、Linuxでサーバー管理などを行う。できればWSGIサーバー。

☓。もうAWSもherokuも習熟したのでらいいのではないかと思っている。それよりフロントエンドとかハードウェアとか機械学習やろうかな・・・

ブラウザベースでいじれるpythonモジュールをpypiに公開する

☓。まーつくりたいものができたらやろうかな。ブラウザでいじれないコマンドのpypi登録は出来てるのでモチベーションがいまいち

正月想定してなかったけどできたこと

  • CTFでセキュリティ知識増えた
  • 人工衛星開発プロジェクト加入でハードウェア領域強化捗りそう
  • JavaScriptでVue.js+Firebaseが扱える(今年中にはまあまあ行けるだろう)
  • Redis、NoSQLを扱えるようになった。
  • herokuが割と得意になった気がする
  • AWSはかなり理解が深まった

感想

結構いい感じ。まさかMRの実装までできるとは思わなかった今年の正月。

ウクレレ演奏者 JAKE SHIMABUKURO(ジェイク・シマブクロ)さんがいい感じ

グレイテスト・デイ(初回生産限定盤)

グレイテスト・デイ(初回生産限定盤)

経緯

ふと何気なく、J-WAVEをつけたらインタビューと演奏が流れていて、音楽がハワイアン〜な感じで雰囲気あっていい感じだな〜と思い、調べてみた。オススメです^^/

演奏

ラジオで流れてたのはこのエド・シーランのカバーと思われる。

井上陽水の氷の世界を弾いてる。オシャレ・・・

日本語サイトもあったよ

www.jakeshimabukuro.jp

調性の勉強:バッハ『主よ人の望みの喜びよ』

メモ

再び調性について勉強しました。習っているヴァイオリンの先生から正確なところを勉強させてもらいました^^ ありがたや〜

主よ人の望みの喜びを

自分が弾いた版の主調の場合の解析です。編曲によってはかわるのかもしれません。

ト長調 G(主調)
(トニック)

イ短調 Am(下属調ト長調の五度下の調)
(主調のサブドミナントがルート音)

ハ長調 C (イ短調Amの平行調 構成音が同じ調(キー))

ト長調 G (主調)
(トニック)

転調時の五線譜の変化についてメモ

主調(例:C)→(五度上)→属調(例:G) #が1個増える
主調(例:C)→(五度下)→下属調(例:F) ♭が1個増える

音楽理論とクラシックの呼称のメモ

ダイアトニックコード、トニック、ドミナント、ルートと、用語はポップスとかと同じ呼称だった。(ネットの記事によっては「トニカ」とか書いてあったので統一されているのかどうか気になっていた。)

Firebaseでプロジェクトをコード書いて=>WebAPIサーバーに仕立てるときのコマンドのメモ

memo

Firebaseを使い始めるときのコマンドのメモ

環境
MacOS
・npm
・FirebaseCLIでログイン済み

1:プロジェクトを作る

Webコンソールにログインして、プロジェクトを作っておく

2:コマンドを作業ディレクトリをつくって打つ

$ firebase init hosting

     🔥🔥🔥🔥🔥🔥🔥🔥 🔥🔥🔥🔥 🔥🔥🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥🔥🔥 🔥🔥🔥🔥🔥🔥🔥🔥     🔥🔥🔥     🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥🔥🔥
     🔥🔥        🔥🔥  🔥🔥     🔥🔥 🔥🔥       🔥🔥     🔥🔥  🔥🔥   🔥🔥  🔥🔥       🔥🔥
     🔥🔥🔥🔥🔥🔥    🔥🔥  🔥🔥🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥   🔥🔥🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥
     🔥🔥        🔥🔥  🔥🔥    🔥🔥  🔥🔥       🔥🔥     🔥🔥 🔥🔥     🔥🔥       🔥🔥 🔥🔥
     🔥🔥       🔥🔥🔥🔥 🔥🔥     🔥🔥 🔥🔥🔥🔥🔥🔥🔥🔥 🔥🔥🔥🔥🔥🔥🔥🔥  🔥🔥     🔥🔥  🔥🔥🔥🔥🔥🔥  🔥🔥🔥🔥🔥🔥🔥🔥

//なんかFirebaseぽいロゴが・・・笑

You're about to initialize a Firebase project in this directory:

  /自分が/設定した/ディレクトリ

=== Project Setup

? Select a default Firebase project for this directory: [create a new project]

// 手順1で作っておいたプロジェクトを選ぶ

=== Hosting Setup
? What do you want to use as your public directory? public

//public

? Configure as a single-page app (rewrite all urls to /index.html)? No

//N

✔  Firebase initialization complete!

Project creation is only available from the Firebase Console
Please visit https://console.firebase.google.com to create a new project, then run firebase use --add

//多分成功したっぽい

これでホスティングの準備ができた模様

3:functionsを初期化

functions/index.jsというのができるので、そこにWebAPIを書くとWebAPIサーバーの準備はできる

$ firebase init functions

//中略

=== Functions Setup

A functions directory will be created in your project with a Node.js
package pre-configured. Functions can be deployed with firebase deploy.

? What language would you like to use to write Cloud Functions? JavaScript
? Do you want to use ESLint to catch probable bugs and enforce style? No
✔  Wrote functions/package.json
✔  Wrote functions/index.js
? Do you want to install dependencies with npm now? Yes

4: functions/index.jsにコードを書く

ここは個々人の目的にあったAPIを書く

5: デプロイ

WebAPIの関数部分だけのデプロイはこのようにやるっぽい

(firebase.jsonがあるディレクトリで実行)
$ firebase deploy --only functions

//デプロイ先が出てくる。curlなどで試すとよい

//Error: Not in a Firebase app directory (could not locate firebase.json)

curlテストもうまくいき、とりあえずWebAPIの簡易サーバーはできた

参考になった書籍

React、Angular、Vue.js、React Nativeを使って学ぶ はじめてのフロントエンド開発

React、Angular、Vue.js、React Nativeを使って学ぶ はじめてのフロントエンド開発

Firebaseを使い始めるときのコマンドのメモ

memo

Firebaseを使い始めるときのコマンドのメモ

環境
MacOS
・npm

$ npm i -g firebase-tools@3.18.0

//わーっとたくさん出てくるWARNINGとか
//出ても気にしなくてOK

$ firebase login
? Allow Firebase to collect anonymous CLI usage and error reporting information? Y
// Yにとりあえずしといた

//ブラウザが開いて、グーグルアカウントでの認証を行う

✔  Success! Logged in as xxxxxxxxxx@gmail.com

//ログイン成功

これで使えるみたいです。

vue.jsとvuexの実装と挙動のメモ

f:id:k_mawa:20180617021558p:plain

memo

vueのざっくりとした流れのメモです。

vueの処理の流れ

componentxxx任意xxx.jsmethods,computeの部分

componentxxx任意xxx.js
data returnの部分で<template>に向けてデータバインディング

UI表示

vuex

state(簡易NoSQLみたいにメモリをつかっているのかな?後日検証。)

mutation(stateを更新)

action(mutationにcommit)

参考書籍

React、Angular、Vue.js、React Nativeを使って学ぶ はじめてのフロントエンド開発

React、Angular、Vue.js、React Nativeを使って学ぶ はじめてのフロントエンド開発