この記事はSSSRC Advent Calender 2021 15日目の記事として書かれています!

こんにちは,M2の山田です.

最後にブログを書いたのがいつだったか忘れるほどブログを書いていない気がしますが,最近あったことをつれづれに書きつくっていこうと思います.

 

さて,気づいたら真冬になりましたね.ついつい長くお風呂に入りたくなる季節がやってきたわけです.

そして最近,僕の家ではお風呂に関する衝撃的な事件が起こりました.

いきなりお湯がでなくなったのです!!!

原因は給湯器が壊れたこと.

最低気温が10℃を下回るこの季節にお湯が使えないなんて,とてもしびれる展開ですねぇ.

粗品さんの"生涯収支マイナス1億円君"よろしく,僕は図らずも"給湯器なしお君"になってしまいました.

 

"給湯器なしお君"「とりあえずお母さんに電話しました.それはもうお母さんに電話しました.」

"給湯器なしお君"「ただまあ打つ手はないです.ギイヤァァーーーーーー(断末魔)」

 

幸い,仏のような友達のおかげで,お風呂には困らなかったのですが,修理されるまでの1週間は不便でしたね.この友達がいなければ僕は恐怖と寒さで震えていたことでしょう.

たしかこの頃でしたね.これアドベントカレンダーのトピックにちょうどいいんじゃね?と思い始めたのは.

まさにギフト.ネタに昇華できればこっちのもんです.

 

雑談はこれくらいにして,先日"ひろがり"のミッション達成がプレスリリースされました.

足掛け6年の大プロジェクトになってしまいましたが,これまで関わってきた多くの人の努力も少しは報われたのではないでしょうか.

僕も2021年は「いかにして衛星を生かすか」ということに注力してきたつもりです.

考え得る想定外を考え尽くし,これ以上はないだろうという計画を練って運用に臨みましたが,想定しない真の想定外はやはりあるものです.JAXAにも「想定される想定外はたいてい起きない」というジンクスがあるみたいですが,全くその通りだと思います.

次期プロジェクトを担う後輩にはたっぷりと時間を費やして計画を練ってほしいものです(普通は考えられないことだと思いますが,"ひろがり"の場合は運用直前の2カ月で高速に練り上げました.つらかった...).

また,「いかに運用を楽に維持していくか」の考えが抜けていたのは反省点です.

これからプロジェクトを始める方がいらっしゃれば,開発や運用を支えるツールを開発するのも立派にプロジェクトの一端を担っているということをお忘れなく.

 

長くなりましたが,今日はこのあたりで失礼します.いつかまたここで

 

PS

最近読んでいる小説を紹介したかったのですが,最近読めていないので,手軽に読める漫画を紹介します!

「BLUE GIANT」...JAZZという超おしゃれテーマなのに甲子園くらいアツい内容の,やる気にさせてくれる漫画です.ぜひ!

この記事はSSSRC Advent calendar 2021の記事です!

 

本日は2回生鳴海の茶番にお付き合いください!

 

第14話「寂寥」

 師走のある日の昼間。あれは鉛を張ったような曇り空の日、僕は友達と3人で出かけた。

「時として男にはやらなきゃあいけねえことがあるんだぞ」親父はよくそう言っていた。そうだ、僕らは男としてやるべきことをしに行くのだ。

 

 中百舌鳥から御堂筋線に乗って難波まで向かう。煌々な車内で味気ない会話をする男3人。時間が経つほどに話が途切れ途切れになっていく。暫くすると、窓の外が黒から白になった。どうやら難波に着いたらしい。座席に張り付いた腰をよいしょと上げ、僕たちは絢爛な世界に降り立った。

 

 降り立って直ぐ、「腹が減っては戦はできぬ」とK氏が口にした。僕らは皆揃って、移動だけで綿のように疲れており、お腹が空いていた。そこで、少し遅めの昼食を食べることにした。食べに向かった先はサイゼリア。ここでの記憶はエスカルゴを初めて口にした以外には消えてしまった。

 

 小腹は満たせたところで、いよいよ目的地へ向かう。 目的地のお店に近づくにつれて3人の歩幅が小さくなる。「帰りたい」と弱音を吐くK氏。「逃げるなK氏!!逃げるなァ!起きて戦え!」とK氏を鼓舞するA氏。その様子を拱手傍観する自分。そうこうしている間に、到着してしまった。メイドカフェ「カフェe-maid」に。

 

 到着したのはいいものの、お店の入り方がわからず僕らは立ち往生していた。その間にも「魔人ブウさま〜どうぞ中へ〜」などと他の客の名前が呼ばれ、次々と店の中に入っていく。ここで勇気を出さねば男が廃ると思い、メイドさんに声をかけた。入店したい旨を伝えると「暫くお待ちいただきますが、よろしいでしょうか?」と言われ、僕はたちまち首肯する。30分ほど経ったときであろうか。寒空の中待つ,自分達の名前が呼ばれた。「た〇〇〇ごさま〜どうぞ中へ〜」時は満ちた。

 

 店に入ると、僕たちのメイド喫茶に対する不安感は消え去った。店内はいかにもという感じではなく、抑制のきいた雰囲気であった。自分達によく合う。僕たち「旦那様」は店の奥の個室に案内された。

 

 個室に入ると、メニューが渡された。旦那たちは熟考の末、800円程度のケーキ、お茶、チェキセットを頼んだ。ケーキが届くまでの間、3人は意気揚々とたわいもないことを話していた。暫くするとメイドさんが快活にケーキを持ってきた。フォークが皿に当たる金属音が部屋に響き渡る。ケーキを食べ終え、一服しているとチェキの撮影に呼び出された。メイドさんと一対一のチェキである。隣に人がいて緊張することが久しぶりであったと思う。ハートは作れなかった。

 

 撮影後は暫く談笑し、旦那たち3人は帰宅の途についた。家に帰り、ふと今日のことを思い出してみた。メイド喫茶という新しいジャンルを開拓できた喜びと、拗らせている自分へのやるせなさだけが残った。
 

 

 みなさんこんにちは.4回生の川原です.このSSSRC Advent calendar 2021も13日目となり折り返し地点となりました.ここまで読んでくださった皆さんありがとうございます.おかげさまで会社・広報ジャンルでのブログランキングが2桁に乗りました.引き続き後半戦をお楽しみください.

 さて,折り返し地点で大事な場面ですが今回自分はFPGA(GWIN-UV4LQ144C6/I5)の開発ボード(2021/12/13現在在庫切れ)をいじってみて技術的ではなくただ単に反省を書こうと思います.積読をついついしてしまう自分にとってInterface2021年12月号は久しぶりに読む+実施することをやったものでありますが,反省ごとがあるのでまとめていきます.

 

 余談ですが,積読については自分は積むだけで知識が蓄積されるという教えの信者のため,本はいわば外付けHDDのようなものだと思っています.(すぐに知識を取り出せるわけではないためSSDには劣りますね.)

 

 

FPGAとは

 FPGAはField Programmable Gate Arrayの頭文字をとったもので,内部に存在する論理回路を変更することで目的の論理回路を構成するシステムです.FPGAデバイスの中に論理回路が多数存在していて,その中でどれを使うかを取捨選択する感じですね.

 このFPGAのメリットとしてはマイコンを補うというのがあります.マイコンと組み合わせることによってマイコンの得意ではない部分や難しい処理などを補ってくれます.詳しくは専門書などを読んでいただけるとよくわかるかと思います.

 実際FPGAは2足歩行ロボットなどいろいろな分野で使用されていて,衛星の分野としても革新的衛星1号でより省電力化の検証実験を行っているなどされています.

 プログラミング言語はVHDL,Verilog HDL,SystemVerilogがメインとして使われています.

 

論理回路とは

 1,0といったデジタル信号を処理して計算や記憶を行う回路のことです.具体的にNOTゲート,ORゲート,ANDゲート,XORゲート,NORゲート,NANDゲートなど存在していてこれらを組み合わせることで構成されていきます.論理演算工学という授業があるのですがそこで扱う内容であり,航空でありながら取った自分はパズルみたいだと面白がっていた記憶があります.

 余談ですがORゲートは論理和演算のことを指し,ゲートに入ってきたもののうちいずれかが正であれば正と返します.そのため,英語で”Trick or Treat”というと「『おかしをくれる』か『いたずらされる』の一方をくらう」のことを指しますが,論理回路的には「『おかしをくれる』か『いたずらされる』のうち一つ以上をくらう」ことになります.英語の意味でとらえるためには”Trick XOR Treat”ですね.(このことを工学以外の人に言ったら,何言っているの?と本気で引かれて心配されたのでいう人を選びましょう.あと季節も選びましょう.)

 

 

本題

 さてここからが本題のFPGAをいじってみての反省に移りたいと思います.自分がもっとも言いたいことは「急がば回れ」です.

 今回使用しているInterface 12月号ですが,この中にサンプルコードが入っていて,コードを打ち込むことでFPGAはきちんと動きます.また,基本的な内容のサンプルコードのため応用を利かせることも可能でしょう.

 しかしながら本を写すだけでは理解は深まりません.Cやpythonみたいに以前触ったことがあるコードおよびそれを派生した言語の場合は理解できることもありますが,今回使用する言語はVerilog HDLという若干毛色の異なるものです.コードを書き写す際にこのコードは何を意味するのかをある程度理解してから書いていきましょう.

 というのも実際に自分は初めにLチカをやっていたのですが,次にやったストップウォッチの実装の際にコード大体C言語と一緒だろうと初めにとりあえず書き写す作業をしてしまい,のちに何がどこに対応しているのかを見返す必要が出てきて入門書に戻りました.この時コードを読み解く作業はコードを理解しながら書く行動より時間がかかりますし進捗が目に見えづらくなるため精神的にきつくつらいものでした.

 今回読み解く必要があったのはコンパイルが通ったものの予想外の挙動を示したものであるからでした.(ストップウォッチの実装の際に1分の桁と1秒の桁が表示されないという挙動)コンパイルエラーをはいてくれればまだ修正は楽だったのですが,打ち間違いの箇所に気づくのに結構時間を食われて萎えてしまいその日の作業を切り上げてしまいました.

 このようにプログラムを書く際にコードを理解してから書いた方が後々デバック作業がしやすくなりますが,コメントを残すこともデバック作業として楽になりますね.というのも学生団体という性質上自分が書いたものを他の人が変更を加える可能性があるというのももちろんありますが,自分自身が書いたものを見返す際にやっぱりコメントがあると読みやすくデバックしやすいなとコードを改善しながら思っていた次第です.

 

 CanSatの時にCとかPythonとかを使用していて,その時には他のブログで書かれているコードを写してからいじっていましたがその時と同じような経験を味わってしまったFPGAの勉強の体験記でした.

 本当は「FPGAでUARTを作ってマイコンと組み合わせてみたよ!」とか書きたかったのですが,それは未来の自分が書いてくれるだろうと託しておきます.

 

 ここまでなんか当たり前だけど大事だなっていうありきたりなことを書いてしまったので最後に自分の趣味を出していきたいと思います.自分は以前のブログにも書きましたがボードゲームが好きなので,BGA(Board Game Arena)でおすすめのアナログゲームを紹介しておしまいにしたいと思います.(タイトルにもORと書いてますし)このゲームは単純だけど面白いのでお勧めですよ.

 

 

ラッキーナンバー(Lucky Numbers)

  •   タイルには1~20までのタイルが人数分存在し,裏向きに伏せられている.
  •   ボードは4×4マスのボードで初めにタイルを4枚左上から対角線上に昇順に置く.
  •   プレイヤーが順番にタイルをオープンするか既にオープンになっているタイルを引く.
  •   ボード上に引いたタイルを配置もしくは交換する.
  •   タイルの配置の仕方は左から右へ昇順かつ上から下への昇順.
  •   4×4マスのボードをタイルで先に埋めた人の勝ち.