頑固社会人がブログ始めてみた

子育てパパが等身大で日々の出来事や感じたことについて書きます

お盆休み前半の幸せ

自分の行いを覚えておかないと時間だけが無駄に過ぎていく。

せっかくのお盆休みが無駄になるのは悲しいので書いておく。

1日1個の幸せで良い。一年で365個の幸せをかみしめようではないか。

 

8/7 

コーヒーを飲みに豆蔵へ

f:id:kshynkty:20200807202730j:plain

 

8/8 

壷阪寺でのツーショット

f:id:kshynkty:20200813000358j:plain

ツーショット

 

8/9

同期と川遊び

f:id:kshynkty:20200813001020j:plain

永源寺キャンプ場

 

8/10 

かき氷を食べた後警察に捕まる

f:id:kshynkty:20200813001459j:plain

ワサビかき氷

8/11

反則金支払い・・・すき家のチーズ牛丼

f:id:kshynkty:20200813002612p:plain

とろ~り3種のチーズ牛丼

 

 

8/12

キラメキノトリの小麦のチカラ

f:id:kshynkty:20200813002024j:plain

小麦のチカラ

仕事がないってだけでこんなに気分が晴れるのはすごい。

 

勇者と魔物 ~失ったゴールド~

みなさんはRPGをやったことはあるだろうか。

wikipediaによると,

ロールプレイングゲームRole-playing game, 略称:RPG)とは、参加者が各自に割り当てられたキャラクター(プレイヤーキャラクター)を操作し、一般にはお互いに協力しあい、架空の状況下にて与えられる試練(冒険、難題、探索、戦闘など)を乗り越えて目的の達成を目指すゲームである[1]

 

ゲームの内容はものによって異なるが,僕のイメージだと以下のような流れだ。

・魔王が世界を脅かしている

・勇者が世界の平和を取り戻すために立ち上がる

・勇者は魔王の手下たちである魔物を倒す

・魔物を倒して得られた経験値やお金で勇者が強くなる

・魔王を倒すことで世界平和を手に入れる

 

実に美しい流れである。その世界では善悪が決まっており,魔物は悪として扱われる。

だが考えてほしい。

・なぜ魔王は初期状態の勇者に対してレベルの高い魔物を与えないのか

  (初めから魔王が出向けば勇者なんてすぐに倒せる)

・なぜ魔物は勇者が使えるお金を落とすのか

  (魔物がお金を生み出す原理とは)

・なぜ勇者は何度も生き返れて魔王は一度死ぬと終わりなのか

  (魔王はすごく潔く死んでくれる)

・なぜ昔のゲームでは魔王を倒してもセーブデータで魔王を倒す前の状態から再開するのか

  (魔王がいなくなったら勇者の存在意義はなくなる)

 

魔王は勇者が強くなるまでしっかりと経験を積ませてくれるのだ。

おまけに生きるためのお金まで投資してくれる。

ここまでではっきりしていることは,

勇者は魔王に生かされている。

もはや勇者が勇者足りうるための魔王と言っても過言ではないだろう。

 

それに対して勇者はどうだろうか?

魔王側を相容れない悪と決めつけ,「平和のため」という目標を失い「魔王を倒す」という手段の目的化に陥り,あげく魔物を乱獲する。

これではどちらが悪かはわからない。

 

f:id:kshynkty:20200811004755p:plain

勇者は魔王に生かされている

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

さて,前の話とはなんら関係ない昨日警察にスピード違反で取り締まられた。

幅広の道で走っており,ふと後ろを見ると覆面が・・・

スピード違反,もちろん良くない。悪である。

60 km道路で80 km出して終わった・・・

(”みんなやっている。”ということは抜きにして,良くはないことだろう。)

 

警察は国の平和のために取り締まった。正義のため。いわゆる善なのだろう。

だが,本当にそれを目的として取り締まっているのだろうか。

motor-fan.jp

www.mag2.com

おや, 勇者 警察にはどうやらノルマがあるようで・・・

”スピード違反を捕まえる。違反車を捕まえる。”

捕まえること自体が目的になっている。

 

おまけにたちが悪いのは,警察の場合レベルアップに相当する昇進で

現場にでなくなる。現場につく奴らはレベルが低いままである。

 

これが何を意味するか??

勇者じゃなくて警察は違反車を捕まえるという雑魚キャラ狩りに永久に囚われる。

レベルアップした勇者は若造勇者に役割を交代して隠居される。

すなわち,魔王までたどりつかない。・・・国に平和は訪れない。

 

うん。すばらしいね,警察って。

別に警察官個人を侮辱する気は全くない。

彼らはしっかりと規則に則って仕事を行っているからだ。

問題は警察の体制だろう。違反が起きないと正義の大義名分が失われる。

国の平和なんざ興味なし,自分たちの立場が大事。

自分達が解決できるような事件・違反が一番嬉しい。

まさに乱獲に走った狂人であろう。

国民のための警察なのか警察のための国民なのか・・・

さて問おう。警察は善か悪か。

 

誤解されそうなので言っておこう。

はっきり言って違反車は悪だ。これは事実である。

だが,警察のやり方が気にくわない。

勇者の皮をかぶった狂人たちは今日も魔物狩りを続けるのだろう。

 

勇者は魔物を狩ることでゴールドを奪い取る

そして僕は警察によってゴールド免許を失った。

・・・さて,保険料考えないとな

盆初日といえばコーヒーだよね

今日は仕事はおやすみ。

少しやることだけやって,のんびり家で過ごそうと思っていた。

 

仕事に関する本を読みつつ,仕事も少しだけしつつ・・・太鼓の達人もしつつ・・

そんなこんなで15時くらいになってコーヒーでも飲みに行こうかと思い立った。

普段は家で飲むが,今日はせっかくだし外へ。

 

ただ,珈琲屋さんに行くのではつまらない。

少しオシャレな穴場なカフェがいいなと思いgoogle検索して豆蔵に決定。

f:id:kshynkty:20200807202730j:plain

珈琲屋さん豆蔵

 

 

最初「まめぞう」かと思っていたが,「まめくら」だった。

隣には2台の駐車スペースもあるので車でも安心。

 

着いたときに16時半くらいであったので,お店は非常に空いていた。

常連さんらしきおばさまが一人だけおり,マスターと楽しそうに会話している。

 

「でも数学だけでも満点とったのはえらいわよね」

「せやろ」

 

世間話というか,孫か誰かの話で盛り上がっている。

 

僕が来たということもあり気を使ってくれたのだろう。

ものの数分したらおばさまは店を出てっていった。

 

これでお店は貸し切り状態

店内の雰囲気がすごく落ち着いててオシャレだった。

f:id:kshynkty:20200807205239j:plain

しゃれてる

元々音楽は流れていなかったが,マスターがジャズ系の音楽をかけ始めた。

 

メニューはこんな感じ。

ブレンドだけでなく好きなグアテマラもあったのだが,

今回は「新豆蔵ブランド」を選択。

旧をのんだことがないのだが,「新」という言葉になんとなく惹かれた。

f:id:kshynkty:20200807204652j:plain

メニュー

f:id:kshynkty:20200807204832j:plain

メニュー2(裏側)

5分くらいしてコーヒーが来た。

f:id:kshynkty:20200807205349j:plain

芯豆蔵ブランド

はっきり言って僕はコーヒーならわりと何でも好きなので批評家ではない。

が,とりあえず感想としては飲みやすくて後に少し苦みが残る感じでおいしかった。

 

のんびり過ごそうと思っていて時間をかけて飲んでいたら少し酸化してしまい,

けっこう酸味が強くなってしまったのでミルクと砂糖を入れてみた。

 

意外と味変っていいかもな。

 

普段は冷めてもブラックでいただくのだが,味変の良さについて実感した。

今度またグアテマラ飲みに行ってみたいな。

日曜日のもったいない症候群と人生がトリミングな件について

あの現象は何なのだろうか。

 たぶんみんな経験があると思う。

 

そう,あの現象である。

 

平日の疲れを癒すために土日閉じこもっていると,日曜日の15時ごろに感じる

「このままでよいのだろうか??」という気持ち。

無駄に土日を過ごしてしまうのではないかという焦燥感。

 

先日そんな気持ちに駆られて日曜日の16時から琵琶湖の白髭神社に行ってきた。

なんかどこかに行かなきゃ!!そんな気持ちがあったのだ。

 

自分の趣味を考えると,ドライブと一眼レフ。

一眼レフで絶景を撮りながら自然に癒されたい!!

そんな目的を掲げて場所を決める。

 

場所はインスタでサーチしながらなんとなく白髭神社に決定。

白髭神社は湖の中に鳥居が立っている。

実質厳島神社である。

f:id:kshynkty:20200805232917j:plain

白髭神社

 

うむ,綺麗な写真である。

さすが一眼レフ・・・と言いたいところだが,これはスマホの写真である。

なぜか,一眼レフのSDカードが壊れて,一枚もとることができなかったのだ・・・

 

写真は撮れなかったが,この景色である。琵琶湖の音に耳を澄ましさぞかし癒されたことだろう。

そう思われるかもしれない。だが,下の二つを見てもそう言えるだろうか。

f:id:kshynkty:20200806000903p:plain

f:id:kshynkty:20200806002336p:plain

これが現実

 

・写真の裏側では車がものすごい勢いで走っている

・駐車場から写真スポットまでは横断歩道がなく危険

・カメラの画角外はほぼカップ

 

 

本来の目的であった,一眼レフで絶景を撮りながら自然に癒されたい!!いう目的については,スマホで写真を撮る羽目になりカップル達に紛れて景色をトリミングするという結果になった。

ちなみに景色は最高だったので良しとする。

 

カメラは偉大だ。騒音雑音現実逃避を可能にして綺麗な一部だけを切り取れる。

人生もトリミングだと思う。

多くの人が自分に必要なものだけをとり,不要な部分は見ない。

そうやって汚い部分を見て見ぬふりして大人になっていくのだろう。

 

思わず前のカップルを蹴落としてやりたくなった日曜日の夕方であった。

言うよね~ 不要な発言に注意

 

これは、先日友人に起きた出来事である。

全部は長いので、要点のみ書く。

 

①会社から地震対策用に,対外向けに内製している取り付け板を支給された

②取り付け板の説明で『お客様は取り付けず、専門の取り付け員にお任せください』と記載されていた

③何か特殊な技能が必要なのかと疑問に思い、会社の担当にメールをうつ

④メール内容「『お客様は取り付けるな』と記載されているが自分で取り付けてよいのか??

⑤返信内容「あなたはお客様ですか?いえ、従業員ですよね。ご自身で取り付けてください」

 

友人はそのメールを見て不愉快な気分になったという。

「あなたはお客様ですか?」という一言は必要ないやろ!!ということである。

 

もちろん友人が言葉足らずな点はあるものの、「ご自身で取り付けていただいて構いません」でよくないか??と怒っていた。

 

そもそもこの問題が起きた原因は,「お客様」が指している対象にあると思う。

お客様とは?

文字通りにとらえれば社外の方だろう。

だが文脈的には,取り付け板のユーザーがお客様という意味だと思う。

 

原因はいいとして,今回の文と口語の違いについて考える。

文字で書かれた言葉は言われる言葉よりも感情が薄れて伝わる。

淡々としたコメントになるだろう。だからこそ顔文字とかもあるのだろう。

 

「お前客ちゃうやん。従業員やろ?」と言われれば,関西人特有の圧はあるものの特に悪意なく受け取れるだろう。

関東出身の僕としては「ご自身で取り付けていただいてかまいません」が正解だと思うが関西の場合ツッコミいれられるのはご愛敬だろう。

 

怒っている友人には一応

担当の方がものすごい論理立てて『自身で取り付けて良い』という結論まで導いてくれたんじゃね?」と茶化したが,たとえ自分の立場がでもムカついていただろう。

 

なにより驚きなのは,普段トゲのない方からのメールであったことだ。

恐らく機嫌が悪いときだったのだろう。

だが,その返答をもらった友人も不機嫌になる。

 

この連鎖を止めるにはどうすればよいのだろうか。

答えは簡単だ。誰かがグッとこらえればよい。常にサンドバックになり続ければよい。

そして擦り減ればよい。すべてを請け負えばよい。

 

そんなことをしていたらいずれ人は狂うだろう。

結論:連鎖は止められない。

Raspberry Pi Zero python3 opencvインストール

python3にopencvを入れようとしてとにかく大変だった・・・

 

そもそも何も理解していない自分が設定を行うこと自体おこがましい。

というか、無理に等しい。

 

今回も他の方のブログや情報を参考にさせてもらった。

ことの発端は最初に書いた

import cv2

ImportError:No module named cv2

はい、エラー発生。

ひとまず

sudo pip install cv2

Collecting cv2
Could not find a version that satisfies the requirement cv2(from versions: )
No matching distribution found for cv

よくわからんがなんかできてない。

qiita.com

ひとまずこの方のブログを参考に

sudo apt-get install python-opencv

sudo apt-get install libopencv-dev

それでもpython3のimport cv2でエラーが生じる

よくわからんが、なにか状況が違うのだろう。

ということで、

creepfablic.site

こちらのブログではエラーの状況に対する方法が途中まで一致したので

感謝しながらコードを脳死状態で打つ。

 

pip3 install opencv-python

sudo apt-get install libjasper-dev

sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig libqt4-test

sudo apt-get install libatlas-base-dev

 

この方のブログの最後のエラーまで到達。

ImportError: undefined symbol: __atomic_fetch_add_8

ImportError: /lib/python3.7/site-packages/cv2/cv2.cpython-37m-arm-linux-gnueabihf.so: undefined symbol: __atomic_fetch_add_8

 

vi .bashrc

export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1 #この一文を追加

再読み込みさせ反映を行ってみた。

source .bashrc

でもエラーが発生し続けている。

ImportError: undefined symbol: __atomic_fetch_add_8

 

ここまでか・・・・

ということでbashrcの中身を戻して再び放浪

stackoverflow.com

ここまで来たら手あたり次第にやるしかない。

sudo apt update && sudo apt-get install python-opencv python-scipy ipython

やってみたが、効果がない。

 

ほかのブログを見ていてコードがあったのでとりあえず試す。

その後のコードが長すぎて心が折れたのでupgradeまでしかしてない。
sudo apt-get update
sudo apt-get upgrade

 

qiita.com

この辺からやっと兆しが見え始めた。

時刻はもう午前4時頭が働くどころの話ではない。

ひたすらに書いてあることだけを打っていく。

$ sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-103
$ sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
$ sudo apt-get install libatlas-base-dev
$ sudo apt-get install libjasper-dev

sudo pip3 --default-timeout=1000 install opencv-python

これでもpython3 import cv2をやるとエラーは起きている。

エラーはやはり以下のエラー・・・

ImportError: undefined symbol: __atomic_fetch_add_8

先ほどのブログと異なるのはまずターミナルで以下を実行していた。

LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1

次にvimでbashrcを変更。

vim.tiny .bashrc
export LD_PRELOAD=/usr/lib/arm-linux-gnueabihf/libatomic.so.1 #この一文を追加

そして適用(先ほどもおこなったのだが・・・)

source .bashrc

再起動もしたかもしれない(もうはっきり覚えていない)

あきらめムードでpython3

import cv2をおこなったところエラーなし

ほっと一息ついてしばらくしてimport cv2を行ったらなぜかまたエラー・・・

 

qiita.com

半泣きになりながら最後の望みをかける。

sudo apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-100
sudo apt-get install libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5
sudo apt-get install libatlas-base-dev
sudo apt-get install libjasper-dev

 

もう何を書いているのかすでに同じコードを書いたのかすらわからずただ時間が過ぎるのを待つ。

sudo pip3 --default-timeout=1000 install opencv-python

一度動いたことだけが心の支えであった。

$ python3
>>> import cv2
>>>

できた。

結局何が原因だったのかなぜ一度うまくいって再びエラーが起きたのかはわからない。

だが、先人たちはすげぇ。感謝してもしきれない。

LCDに画像表示の続きタッチ操作 ~Raspberry Pi Zero~

TFTってなんじゃらほい??

thin film transistor の略で液晶のことだと思う。

 

以前もLCDについては書いたがそのときは画像の表示しかできなくて,

せっかく購入したタッチパネルを活かせていなかった。

そこで今回はタッチパネルを使えるようにしたい。

 

kshynkty.hatenablog.com

 

と言っても問題は,自分がマイコンとかソフトウェアとか全くのド素人であること。

必死にLCDの型番2.8inch SPI Module ILI9341 SKU:MSP2807を用いてタッチパネルを実現しているブログを探した。

 

その結果こんな記事を見つけた。

behindthesciences.com

 

まずは配線を行う。

表示のみのガイドから入っているため、タッチパネルのピン配置されていない。

f:id:kshynkty:20200711132401p:plain

*上記ブログの引用

 

以前使用した配線と異なるのでGPIOを入れ替える・・・・(´;ω;`)

 

次にブログに従ってコマンドを入れていく。

まずはSPI通信が可能かどうか

sudo raspi-config

次にSPIDEVのインストール(SPIDEV??なんだろう)

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python-dev python3-dev
cd ~
git clone https://github.com/doceme/py-spidev.git
cd py-spidev
make
sudo make install

 

pipのインストール
sudo apt-get install python-pip
PIL Pillowのインストール
sudo pip install Pillow

 

デモサンプルのダウンロード

git clone https://github.com/BehindTheSciences/ili9341_SPI_TouchScreen_LCD_Raspberry-Pi.git

 

 

サンプルダウンロード後は

デモサンプルのディレクトリに移動して以下を実行すれば動作した。

 

sudo python BTS_SPI_LCD_DEMO.py

f:id:kshynkty:20200711143247j:plain 

 

次にタッチパネルの配線

f:id:kshynkty:20200711133510p:plain

SPI0だけでなくSPI1を使うらしい。

最終的な配線図はこんな感じ

f:id:kshynkty:20200711142217p:plain

上記のブログではSPI1を使用するときに以下のコマンドを使用している。

/boot/config.txtに記載する。(たぶんsudoコマンド必要)

#enable spi1 with a single CS line
dtoverlay=spi1-1cs

 

だが、他のブログを確認すると、

qiita.com

config.txtをいじると遅くなる例もあるらしく、回避策が書いてあった。

よく理解できてない僕はなんとなく二つのブログを参考にして

/boot/config.txtに以下を記載した。

dtoverlay=spi1-3cs

f:id:kshynkty:20200711135659j:plain

記載後再起動を行う。

 

ここまでいけばサンプルプログラムも動くはずである。

タッチパネルのキャリブレーションのコマンドを記載する。

python BTS-ili9341-touch-calibration.py

なぜかエラーが起きた・・・どうやら分母が0になっているらしい。

原因はどうやらlib_tft24T.pyの中のdef readValue(self,channel)にあるっぽい。

spi.open(0, self._ce_tch)

を変更して以下にしてみる。

spi.open(1,self._ce_tch)

はっきり言って根拠はない。

タッチパネルの方はSPI1つかってるんだから1でいいんじゃね??

こんなもんだ。

 

でも動いたから良しとしよう。

python BTS-touch-penprint-trail.py

上記コマンドを実行したところ、一応タッチした場所の座標がでたので成功だと思う。

f:id:kshynkty:20200711143838j:plain