I’m loser, baby.

So why don't you kill me?

三分の二まで来たところで今年後半のミッションを振り返る

就職が決まったんで5月末に考えた今年後半のミッションを振り返ってみて、今後のミッションをざっくり再構成してみました。

>仕事に就く、または仕事を創る
>そのために制御を学ぶ

無事就職できて制御関係の仕事にも就けたので達成。
最悪、派遣で工場のメンテナンスからでも、って思っていたけど、正社員で開発に潜り込めた。ありがたいことです。

>制御の頭脳部分となるマイコンについて学ぶ

propellerとARMについて勉強した。
具体的に形にすることはできなかったけど、勉強したという意味では勉強した。
マイコンのキモみたいなものはおぼろげながら見えたのと、PWMやデルタシグマ変調について理解できたのは収穫。

>C言語、Forth

C言語は検定受かったのでそれなりに成果があったと言えないこともないが、まだまだ全然。
Forthについては調べるばっかりでろくにコードも書いていない。これから。

>シンセ・音まわり
LPC1114とARMで可変抵抗でコントロール出来るシンセは完成。そこまで。
エフェクターは手が出ず。

>VMまわり
いくつかのソフトのVMのソースを読んだけど、そこ止まり。

ということで見直してみたら、一番の大目標はかなりいい感じで達成できました。
それを踏まえて大目標含めたミッションを再考しているのですが、前半は”「マイコン」制御”に傾いていた方向を”マイコン「制御」”に向けることになると思っています。

>制御まわりについて勉強
当初は組み込み系プログラマの方向を強く考えていましたが、そうした24V以下の弱電マイコン制御の世界ではなく、100V以下の強電系制御の分野に踏み出すことになったので、プログラミングに特化せずハードウェア(リレーシーケンスとかの工業系含む)の世界をもっと知らなくてはいけなくなりました。

  • 制御自体について学ぶ。
    • 古典制御、現代制御
  • PLCについて学ぶ
    • 歴史とか性能とか最新の技術とか。いわゆる現在過去未来
    • PLCはいわゆるPCやマイコンアーキテクチャではなくステートマシンとして設計されているものが多いけれど、それは何故なのか。保守や安定性の面でステートマシンであるメリットがあるのか。

>ネットワーク関連の技術について学ぶ
就職する会社の業務分野はインダストリー4.0的なところとは違うのだけど、ネットワークに積極的に繋げていくということなので、それ関連について身につけておく

  • 主にPLCをつなぐって事に絞って勉強していく
  • クラウド回りで手早くサービスを作るノウハウとか
    • AWSとかHerokuとかGAEとか
    • pythonとかでwebアプリ作れるようになる
  • データ解析のトレンドとか

>エンジニア力を身につける
技術を理解し、目的のために必要な技術・事項を選出・選択し、製作できるようになりたい訳ですが

  • Speak&Spell2000の実現のためのアプローチ方法を変更
    • マイコンの勉強は引き続きしていくけれど、Speak&Spell2000の大元にあった「線形予測によるシンセシス」「自分用のkymaを安く作る」についてはLPC1114みたいな安価なマイコンからアプローチしていくのではなくて、マシンパワーのあるものでソフトウェア的にプロトタイプを作って、段々専用&シンプル&ハードウェア的に作っていくようにしていきたい。
      • pixilang+PCで作る>pixilang+Androidで作る>専用機を作る(下の例みたいにラズパイで作るか、FPGAで作るか、ARMやpropellerで作れるか)
    • アナログ、デジタルの回路設計ができるようになる
      • 仕事向け
      • 音作り向け
      • 究極的にはCPUが作れるくらいに(VM/FPGA
        • スタックコンピュータやステートマシンといったレジスタマシンではないもののメリットを知りたい
  • プログラム力をつける