kozyonikkiのブログ

どこか知の旅に出たときのことを書いていきます。

イベントの参加者から登壇、お手伝いをして得た学び

OSC2022 Hokkaido を支えている人たちの動きを見て感じたことを書こうと思う。LOCAL学生部の半分部長になる前はレポート等でOSCのお手伝いをしていた。今回はセミナーで発表する、OSCの司会を行った。

イベント慣れ、サポートの仕方をわかっている大人の集団

そこで感じたのは、どんどん挑戦していいよ、失敗してもいいよということを言ってくださっているのであれば、やったほうが良いということである。 今までレポート以外のお手伝いをやらなかったのは、運営さんとのやり取りに不安があった、自分の失敗の定義の狭さ、心の余裕がなかったことだろう。

  • どうやって運営さんとやり取りしたら良いか、メッセージを書き込んだときにどんな反応が来るか不安といったものをLOCALの大人の人に聞く、様子を見れたのはとてもありがたいことだった。 大人の方と話す機会が増え、関わっている人たちのことがわかってくると質問もちょっとずつできるようになった気がする。

  • 質問とかそういうのって迷惑かなと思い込んでいたが、わからないまま何も行動を起こせていないことのほうが迷惑だったり、部員の人に不安感を持たせてしまうことがわかった。(自分の不安も解消できないのはやばかった...)

  • 言葉に詰まってしまったり、話をしていて噛んでしまうなど、小さなことも大きな失敗と思っていた。OSCに参加する前に大きな出来事があったこともあり、これくらいまぁいいかと思えるようになった。(事前準備でカバーできる方法はあると思えた。)また、失敗しても責める大人はいないこと、できなくてもサポートしてもらえるという環境はとてもありがたかった。

もしサポートしてもらいたいときは事前にメッセージで自分の不安なことを共有したり、お願いする勇気が大切だと感じた。 サポートがあったことで変なことを言っていた気がするがなんとか司会を乗り越えられた気がする。(サポートしてくださった大人の皆さんにありがとうございました。)

部員さんへの対応での課題

個人的失敗として、部長から部員への伝達の仕方が下手だなと思った。Slackでもいいはずのことを、口頭で伝えるために情報を遅くに提示してしまった。 また、リハーサルなどの進行や案内に気が利いてない、伝えるべき情報量が少なく自分には分かるが、はじめて聞く人には分かりづらいものになってしまった。 多分、口頭で伝えるより、テキストで伝えてから口頭でまとめを伝えるほうが良かったなと思う。

最後に

今年のOSCでは自分の思い込みを正す、学びが多かったように思う。 学びをまとめると、以下のようになった。

  • 情報を共有するためのメッセージのやり取りは多めに早めに
  • お願いしたいこと、できなさそうなこと、不安なことは聞く、伝える
  • 初対面の大人の人は話しにくいのと頼みにくいが、何度も打ち合わせに参加する、その人の動きを見てると自分の大人に対する不安感は減る
  • 事前準備は大切

発表、司会終わりのスイカバーとパピコはいつもより美味しかった。また機会があれば別の勉強会で発表するなどチャレンジして行きたいと思う。

パソコンにUbuntuを入れるのは大変

最近 Dell G7 15 7588 にデュアルブートUbuntuを入れたのでどうやってやったのかメモを残そうと思います。 ubuntuは20.04 LTSを入れました。

公式から出ている記事とグラフィックボードが積んであるPCにubuntuを入れている記事を一通り試して見ました。 できるまでの失敗過程も書いておこうと思います。

参考にしたサイト

Dell製PCでUbuntuおよびWindows 8~Windows 11をデュアル ブートとしてインストールする方法 | Dell 日本

DELL G5 15 で Windows 10 と Ubuntu 18.04 の デュアルブートを実現する方法 | Digital Life Innovator

失敗例

  • 1.公式の記事を見て、ディスクを削除してubuntuを入れる以外は同じことをやる。

    何もOSが立ち上がらなくなりました。どうにかしてパソコンにWindowsを入れ直しました。

  • 2.公式の記事を見ながらWindows Boot Managerとは別に入れる以外は同じことをやる。

    GNU GRUBの起動メニューが起動せず、Windowsが起動しました。

  • 3.公式の記事ともう一つ紹介した記事を参考にWindows Boot Managerとは別に入れるを選択して進める。

    2.にSystem ConfigurationのSATA Operationで、RAID OnからAHCIに変更を行いましたが、GNU GRUBの起動メニューが起動せず、Windowsが起動しました。

成功?

Windowsの方でこのPCがSSDとHDDを積んでいるパソコンだったのでWindowsのHDDを認識解除してみました。 どこかのサイトで複数個ハードディスクを積んでいるとubuntuのインストールを失敗しているようなのを見た気がしたので試してみました。

それと3.公式の記事ともう一つ紹介した記事を参考にその他を選択して進める+(Windows Boot Manager)用に作成されたEFIシステムパーティションがあるので、ここにUbuntu Linuxブートローダーをインストールする+SSDの未割り当て領域に / (マウント・ポイント)を設定しました。

他にUSBメモリubuntuを入れたときubuntuを入れるときの選択で上から2個目にグラフィックボードを積んだやつ用みたいなのを選びました。 今回のインストール方法では以下の記事も参考にしました。

Windows 10自作PCの別ドライブに、Ubuntu LinuxをUEFIインストールしてデュアルブート化。 - PCユーザーメモ

なんでインストールできてしまったのかはまだわかっていないのでこれからちょっとずつ理解できればいいかなと思っています。

悪くない経験を積んでいるのだと言い聞かせる

休学準備を始めました

カッコウの鳴かない、桜は5月中旬まで咲いている土地から逃げ出した。小学生のときから毎年やっていた花壇にスナップえんどうを植えること、ダメさを受け入れて笑ってくれる環境へ向かって。 当初の目的は精神科に受診すること。診断結果は「適応障害」だった。

私の...

大学生活に当てはまるポジティブ単語はいくつあるだろうか。無気力、他人との活動力比較、自責、不安、現状維持の選択。 数学語と物理語の世界を旅し、〇〇エンジニア、ロボットに関わる人を拝む予定だった。ストレートに卒業、復習、予習、課題、出席、テスト、成績、不安。これらを解消すれば自分を認められるとか幸せだとか楽しいは生まれてくると待っていた。休日も不安解消に明け暮れ、洋服を買う、外食するのは1ヶ月に1回できればいいほうだった。

診断を受ける3週間前のこと

最初の異変はスマホでアニメや動画を見ると大学社会に帰れないこと。 寝落ちから起きては美味しんぼ、起きてはリーマンズクラブ、起きてはシャーマンキングである。 主人公とその周りの行動にぐっと来た気持ちを23時以降にレポートにぶつける日々。
次はお風呂。人と合う前日以外入らなくなった。
次は掃除、洗濯、皿洗い。着る服が無いから外出しないこともあった。
次はご飯。動くのがめんどくさい、使える皿、フライパン、包丁がないから作らなかった。 電子レンジとインスタント食品、甘い飲み物、お菓子を開ける音を何度も聞いた。 食べ物が枯渇してもコンビニ、スーパーに行くのもめんどくさい、食欲も感じないという理由からスプーン、箸を握る回数が1日2回あれば良い方になった。 そうして2回目前期中間試験とレポートをサボった。美味しんぼをつけっぱなしにしながら。

こうなる前にできることはあったはず

カウンセリングに行って無気力なことアニメ、動画を見始めると止まらないことを話した。 「他の大学生でそういう生活の人もいるから大丈夫だと思いますよ。」、「ちょっと真面目すぎるんじゃないですか?」、「寝れば良くなると思いますよ。」というような内容だったと思う。 この言葉を受けて、テスト近くなれば嫌でもやると信じていた。

こうなった言い訳をしたい

自分の居場所の理想は、ラジオのリスナー的存在を許してくれる環境である。大学のサークルに幽霊はあまりいらないかもしれないと思い込むことで人間関係を作る挑戦券を破った。 ものづくりサークルに入っていたこともあったがミーティングが多すぎる、作業の全体がわからないため棒人間になる、余裕のない心よる同世代の雑談が聞けないなどという言い訳をついた。 また大学の授業の7~8割程度がオンライン授業のため、対面で聞こえるであろう「俺、このレポートまだやってないわ。」、「あの先生って〇〇だよね。」といった声が入ってこないのは個人的につらい状況だった。 自分だけできない訳では無いと認知できる材料が少なかったのがつらかったのだろう。
認知のゆがみを修正できる機会を自分自身探し足りなかったのだ。

病院での断片

診察を受ける前にある本に出会った。苫野一徳さんの「勉強するのは何のため?―僕らの「答え」のつくり方」という本である。
自分が読み取ったことを書くと以下のようになった。
・「勉強するのは何のため」の答えは個人で違う。
・個人にあった納得解こそが答えである。

精神科の先生に「自己成長、自分から自主的に取り組んでいる、楽しんでいるという感覚のある勉強をしたい。」と本を片手に伝えた。
「今の勉強は(あなたにとって)身にならないのですね。」と認めてくれた。他にも「(今の環境に)無理に適応しないでください。逆に今より生活が良くなるチャンスだと思ってください。」、「今は休みましょう」、「ポイント・オブ・ノー・リターン(回帰不能点)は超えてないと思います。」、「継次処理が苦手ですね。(同時処理優位)」、「短期記憶が苦手ですね。」と言われた。

先生の言葉を今の自分が解釈すると以下のようになった。
・現状のまま大学に戻っても生活できない
・学科変更も視野に入れても良いのでは?
・休みつつどうしたいか考えて行こう

答えを見つけるためには何か楽しいと思ったことに飛びついて、行動しながら考えるのが良い気がする。 休学中期間はこれを意識したい。

参考になったもの、なりそうなものまとめ(個人的メモ)

・「樺沢紫苑先生の動画、本」 (特に休息についての動画)
・苫野一徳さんの「勉強するのは何のため?―僕らの「答え」のつくり方」
勉強するのは何のため?|日本評論社 ・同時処理の物事の取り組み方
ケーススタディ | 練習に取り組もうとしないMさん | 特別支援教育のトビラ

休学中に取り組む課題について(個人的メモ)

・大学どうするのか
・自己分析(心の消費、充電について理解を深める)
・休日(ほぼ毎日)の過ごし方
・規則正しい生活
・英語勉強
・アイデアを形にする力

最後に・まとめ

心の大半は「こんな自分でごめんなさい」という気持ちが占めている。でも「ジョブズがいなくてもアップルは成り立っている。」とカズレーザーさんが言っていたことを思い出したり、「ストライクゾーンが人より狭いだけで、あなたにあった場所はあるはず」、「自分を卑下する時間があったら何か動いてみたら?」と母に言われたのを思い出した。親よりこどもが弱っていく姿を見せている現状がとても悔しい、せめて今日やったことを笑いながら話せる状態まで回復していきたい。

とあるプログラムと人との会話からわかったこと その1

目次

  • 最近気づいたこと
  • これから練習すること
  • 終わりに

最近気づいたこと

 とあるプログラムで週20時間の開発や勉強、人と話をしている中で感じた4つのことについてまとめようと思います。

 1つは技術書の読み方、取り組み方が下手だったことです。 本の中でのサンプル、やり方の手順通りやりながら作っていると本を読み進める途中でエラーに出くわしたときに投げ出してしまい、積読していたなと感じました。 要するに早合点、エラーの対処法など書いてあるのによく読まずして進め、挫折していたということだと思います。 本を一通り読んで全体を掴んでからサンプルを作ったり、コードの一部分を変更して、小さくものづくりできたほうがいいかも知れないと気づきました。

 2つ目は小さいものづくりの量が圧倒的に少なかったことです。 自分の理想が高すぎることによって逆算でものを作っていくときのハードルが高くなりすぎていたのです。逆算の考え方はとても大切だと思っています。ですが、そこに自分の理想を入れてしまうと作っているものは難しくなり中途半端になっていました。過去にやったことがあるものを組み合わせて小さく作っていく練習が必要だなと感じました。

 3つ目は自分はどんな人間で何をやっているのか家族や友達以外、技術のわかる人に伝える努力をしただろうかということです。 ここで書いている記事の投稿数やGitHub、技術系の勉強会で話すことなどを振り返っていると、自分がやってきたものを他の人にも見える形で残していない、自分すらも振り返られるようなものが手元に無いことがわかりました。無いことによって自分の成長度合いやどこまで技術があるのかなど分からないまま疲れるまで歩いていたんだと思いました。

 4つ目は電柱に隠れて人を観察するように技術系の情報をただ眺めているだけだったということです。結局、手を動かせていなかったのです。知った情報も誰かに見える形で残し、できると思ったときの行動ネタとしてストックしておくのも大切だと感じました。また、作りたいものじゃないとなかなか手を動かさない人間なのでやったほうがいいなと思いました。

これから練習すること

 最近気づいたことから練習していきたいと思ったことは以下の4つです。

  • 自分のやっていることを下手でもいいのでブログやスライド等にまとめたり、見える形で残しておく

  • 過去にやったことがあることを使って小さく形にしていく

  • 考えずに行動してみる

  • 技術書のサンプルコードなどを少しずつ変えて作品を作ってみる

    終わりに

     カウンセリングの先生と話すことがあるのですが、私よりカウンセリングの先生のほうが私の成長を楽しんでくれているようで、ずるいと心の中で感じていました。 自分の成長を自分で感じ取れるようにメモに残せればと思います。練習したいことも張り切りすぎず、下手でもいいので習慣化していければと思います。

タミヤのカムプログラミングロボットを改造した話

adventar.org
19日目の記事です。

目次

  • 全体像の話
  • WSLのインストール
  • ラズパイで使うOSをインストールする
  • WSLとラズパイをSSH通信する
  • カムプログラミングロボットを組み立てる
  • 回路とかの話
  • コードについて
  • 動かしての感想とその他
全体像の話

タミヤのカムプログラミングロボットをラズパイを使ってSSHで遠隔制御できるようにしていきます。

WSLのインストール

WindowsパソコンでSSHで通信するためにTera termなど使ってやる場合もありますが、今回はWSL(Windows Subsystem for Linux)を使ってラズパイとSSHをします。 以下のURLからWSLをインストールできます。
https://www.microsoft.com/ja-jp/p/ubuntu/9nblggh4msv6#activetab=pivot:overviewtab

WSLのインストールが終わったあと起動してみると、WslRegisterDistribution failed with error 0x8007019e というエラーが出ました。
そこで、[コントロール パネル] - [プログラムと機能] - [Windows の機能の有効化または無効化] を開いて、[LinuxWindows サブシステム] にチェックをつける操作をして解決しました。
https://docs.microsoft.com/ja-jp/windows/wsl/troubleshooting

再度WSLを起動するとユーザー名とパスワードを聞かれるので指示に従って設定して見てください。ubuntuにインストールされているパッケージ情報のダウンロードとパッケージのアップデートをします。

sudo apt update  
sudo apt upgrade  



参考にした記事 qiita.com

ラズパイで使うOSをインストールと下準備

今回は家にあったRaspberryPi 3 Model B+にubuntu server 20.04.3LTS (RPI 2/3/4/400)をインストールしました。
以下の記事を参考にインストールして見てください。 qiita.com

設定が終わったらラズパイに無線LANとモニターを繋げて電源をつけます。WSLで行ったようにラズパイでもubuntuにインストールされているパッケージ情報のダウンロードとパッケージのアップデートをします。

sudo apt update  
sudo apt upgrade  



WSLとラズパイをSSH通信する

まず、以下のコマンドを打ってラズパイのipアドレスを確認します。

ip -a 

有線LAN接続をしているので eth0: の欄に書かれているプライベートIPアドレス(192.168.~/24)を控えておきます。 WSLに以下のコマンドを打ってラズパイとssh通信をします。

ssh ラズパイのユーザー名@ipアドレス

通信をする際に接続するかどうかを聞かれるのでyesと答えます。



参考にした記事 qiita.com


余談(うまく行った人は読み飛ばしてもらって構いません)

WSLとラズパイでsshしようと思ったら、エラーが出てきました。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!    @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
~中略~
Host key verification failed.

と出て通信ができませんでした。
解決方法として、

cd .ssh
ls

と入力すると.sshというディレクトリにknown_hostsというのがあるのでこれを

rm known_hosts

で削除すると動作しました。
最初に使っていたラズパイ側のOSが壊れてしまって、再度OSインストールしてWSLでsshしようとしたらこのようなエラーが出ました。
ラズパイ側の前のOSと再度インストールしたOSの公開鍵暗号が違うためそれが悪さをしていたのかな という感じでしょうか...(多分違うかも)
詳しいことはまだわかってないのでもう少し暗号化通信の学びが必要だなと感じました。




カムプログラミングロボットを組み立てる

以下のタミヤのロボットを説明書通りに組み立てます。
Amazon | タミヤ 楽しい工作シリーズ No.227 カムプログラムロボット 工作セット 70227 | ホビー用素材 通販

組み立てた後、プログラムピンを挿してロボットを動かす機構を取り外します。 組み立て終わったロボットはこのようになりました。 f:id:kozyonikki:20211212011316j:plain

組み立てたときの感想として、力が無いのか止め方が悪いのか、止めがガバガバ過ぎている気がしました。特に腕の根本など。 なるべく取っ手の長いドライバーを使って組み立てられるといいと思います。(精密ドライバーを使って組み立てていたので...)

回路とかの話

使ったものは

回路は以下のようになっています。 f:id:kozyonikki:20211215004100p:plain

f:id:kozyonikki:20211219002451j:plain
実際の写真

コードについて

PWM制御で進む速さなどを調節せず、(常にフルで動く)ON/OFF制御でロボットを操作しています。 コードはシェルで書いています。 以下がコードになります。

以下の記事を参考にラズパイを制御しました。 tool-lab.com

#!/bin/bash

#a1=15
#a2=14
#b1=18
#b2=23

echo 14 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio14/direction
echo 15 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio15/direction
echo 18 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio18/direction
echo 23 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio23/direction

while :
do
    echo "方向を入力してください"
    read key

    if [ "$key" = "s" ]; then
        echo "まっすぐ進む"
        echo 1 > /sys/class/gpio/gpio14/value
            echo 0 > /sys/class/gpio/gpio15/value
            echo 1 > /sys/class/gpio/gpio18/value
            echo 0 > /sys/class/gpio/gpio23/value 
    
    elif [ "$key" = "d" ]; then
        echo "右に旋回"
            echo 0 > /sys/class/gpio/gpio14/value
            echo 1 > /sys/class/gpio/gpio15/value
            echo 1 > /sys/class/gpio/gpio18/value
            echo 0 > /sys/class/gpio/gpio23/value
    
    elif [ "$key" = "a" ]; then
        echo "左に旋回" 
            echo 1 > /sys/class/gpio/gpio14/value
            echo 0 > /sys/class/gpio/gpio15/value
            echo 0 > /sys/class/gpio/gpio18/value
            echo 1 > /sys/class/gpio/gpio23/value
    
    elif [ "$key" = "f" ]; then
        echo "バック" 
        echo 0 > /sys/class/gpio/gpio14/value
        echo 1 > /sys/class/gpio/gpio15/value
        echo 0 > /sys/class/gpio/gpio18/value
        echo 1 > /sys/class/gpio/gpio23/value
    
    elif [ "$key" = "" ]; then
        echo "停止処理"
        echo 0 > /sys/class/gpio/gpio14/value
        echo 0 > /sys/class/gpio/gpio15/value
        echo 0 > /sys/class/gpio/gpio18/value
        echo 0 > /sys/class/gpio/gpio23/value

    fi
done



方向入力を聞かれるので以下のように入力して見てください

入力 制御動作
s+[Enter] まっすぐ進む
d+[Enter] 右に回る
a+[Enter] 左に回る
f+[Enter] 後ろに進む
[Enter] 停止

入力通りに動かなかった場合は配線が間違ってないか確認してみてください。

ラズパイに以下のコマンドを打つとコードのファイルをダウンロードできます。

git clone https://github.com/GlassesGoat/kamurobo.git

コードに実行権限を与えます。

cd kamurobo
chmod +x robo.sh

rootユーザーになってからファイルを実行すると操作できるようになります。

sudo su
./robo.sh
動かしての感想とその他

モーターを動かすための電池が高すぎる(多分1.5vの乾電池3本くらいがいいかも)、もしくはPWM制御で速度を変えないといけないなと思いました。 動作中に[Ctrl]+Cを押す、ラズパイの電源を切る前にモーター駆動用の電池を抜かないと勝手に前進したり動いたりするので危ないです。安全設計では無いのでそこも改善しないと行けないです。
また、有線LAN接続を無線に変更しようと思います。これらは後で追記しようと思います。(アドカレに間に合いませんでした...)

その他参考にした記事
Ubuntu環境を日本語化する | リナスク
Ubuntu Server(Raspberry Pi)のWifi設定〜リモート接続 - Qiita

IST見学させていただきました!

www.istellartech.com

インターステラテクノロジズの見学に行ってきました!ロケットの発射場、社屋、工場を見させていただきました。

初めに発射場の見学をしました。車で発射場に向かう道中の海の景色は綺麗でした。 到着してロケットのランチャー(発射台)や燃焼試験をしている施設、縦吹き試験の準備をされているところを見ました。YouTubeなどの打ち上げの映像に写っているモノタロウの看板も見ることができました。

f:id:kozyonikki:20210214180546j:plain f:id:kozyonikki:20210214180224j:plain

次に社屋を見学しました。 去年の12月21日に完成したばかりで内装が綺麗で作業がしやすそうなとてもよいところでした。エンジンの実寸大レプリカや応接室にはMOMO2号機に積まれていたものを見ることができました。ロケットについて質問する、作業の様子を見ることができました。

f:id:kozyonikki:20210214191954j:plain f:id:kozyonikki:20210214234021j:plain

最後に工場を見学しました。 従業員の方が真剣に作業されてる姿や工具、機械がたくさんありワクワクしました。机や棚に置いてあった図面や完成した部品を見ることができました。ISTでものづくりをされている方々は輝いていてとてもかっこいいよかったです。

感想
ロケットに関する難しい言葉や部品についてわかりやすく説明していただき、楽しくロケットについて知ることができました。「MOMO」の情報や会社についてはYouTubeやホームページ上に情報があるので調べてから見学に行くともっと楽しめると思いました。ロケットでIST、大樹町ともにもっと大きく有名になっていくといいなと思います。 kachimai.jp

ラズパイでまだまだな読手を作った話(百人一首)

目次

  1. 読手の注意点
  2. 引用したもの
  3. 実際に書いたコード
  4. 使ってみての感想

読手の注意点

読まれ方 かるたの札
道外 上の句読んで下の句取る 紙の札
北海道 下の句読んで下の句読む 木札

※北海道の百人一首と道外の百人一首では読み方が違います。

引用したもの

RaspberryPiでニュースを読み上げる | DeathMarch.net
Raspberry Pi | ラズパイに喋ってもらう作戦(Open JTalk1.08のインストールと音声出力設定) – たぷん日記


今回はPythonで読手を作りました。
一番上の記事はOSインストールやOpen JTalk1.08のインストール方法が書かれています。

実際に書いたコード

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import shlex
import subprocess
import random
import json
import time

CMD_SAY = 'jsay'

random_list = []

saisyo = "ひさかたの、光のどけき、春の日に、静心なく、花の散るらむ"

list_karuta = [
    "わが衣手は、露にぬれつつ、",
    "衣ほすてふ、天の香具山、",
    "ながながし夜を、ひとりかも寝む、",
    "富士の高嶺に、雪は降りつつ、",
    "声きく時ぞ、秋は悲しき、",
    "白きをみれば、夜ぞふけにけ、",
    "三笠の山に、出でし月かも、",
    "世をうぢ山と、人はいふなり、",
    "わが身世にふる、ながめせしまに、",
    "知るも知らぬも、逢坂の関、",
    "人には告げよ、海人の釣舟、",
    "をとめの姿、しばしとどめむ、",
    "恋ぞつもりて、淵となりぬる、",
    "乱れそめにし、われならなくに、",
    "わが衣手に、雪は降りつつ、",
    "まつとし聞かば、今帰り来む、",
    "からくれなゐに、水くくるとは、",
    "夢の通ひ路、人めよくらむ、",
    "逢はでこの世を、過ぐしてよとや、",
    "みをつくしても、逢はむとぞ思ふ、",
    "有明の月を、待ち出でつるかな、",
    "むべ山風を、嵐といふらむ、",
    "わが身一つの、秋にはあらねど、",
    "紅葉の錦、神のまにまに、",
    "人にしられで、くるよしもがな、",
    "今ひとたびの、みゆき待たなむ、",
    "いつ見きとてか、恋しかるらむ、",
    "人目も草も、かれぬと思へば、",
    "置きまどはせる、白菊の花、",
    "あかつきばかり、憂きものはなし、",
    "吉野の里に、降れる白雪、",
    "流れもあへぬ、紅葉なりけり、",
    "静心なく、花の散るらむ、",
    "松も昔の、友ならなくに、",
    "花ぞ昔の、香ににほひける、",
    "雲のいづこに、月宿るらむ、",
    "つらぬきとめぬ、玉ぞ散りける、",
    "人の命の、惜しくもあるかな、",
    "あまりてなどか、人の恋しき、",
    "物や思ふと、人の問ふまで、",
    "人知れずこそ、思ひそめしか、",
    "末の松山、波越さじとは、",
    "昔は物を、思はざりけり、",
    "人をも身をも、恨みざらまし、",
    "身のいたづらに、なりぬべきかな、",
    "ゆくへも知らぬ、恋の道かな、",
    "人こそ見えね、秋は来にけり、",
    "くだけて物を、思ふころかな、",
    "昼は消えつつ、物をこそ思へ、",
    "長くもがなと、思ひけるかな、",
    "さしも知らじな、燃ゆる思ひを、",
    "なほうらめしき、朝ぼらけかな、",
    "いかに久しき、ものとかは知る、",
    "今日を限りの、命ともがな、",
    "名こそ流れて、なほ聞こえけれ、",
    "今ひとたびの、逢ふこともがな、",
    "雲がくれにし、夜半の月かな、",
    "いでそよ人を、忘れやはする、",
    "かたぶくまでの、月を見しかな、",
    "まだふみもみず、天の橋立、",
    "けふ九重に、にほひぬるかな、",
    "よに逢坂の、関はゆるさじ、",
    "人づてならで、言ふよしもがな、",
    "あらはれわたる、瀬々の網代木、",
    "恋に朽ちなむ、名こそ惜しけれ、",
    "花よりほかに、知る人もなし、",
    "かひなく立たむ、名こそ惜しけれ、",
    "恋しかるべき、夜半の月かな、",
    "竜田の川の、錦なりけり、",
    "いづこも同じ、秋の夕暮れ、",
    "芦のまろやに、秋風ぞ吹く、",
    "かけじや袖の、ぬれもこそすれ、",
    "外山の霞、立たずもあらなむ、",
    "はげしかれとは、祈らぬものを、",
    "あはれ今年の、秋もいぬめり、",
    "雲居にまがふ、沖つ白波、",
    "われても末に、あはむとぞ思ふ、",
    "いく夜寝覚めぬ、須磨の関守、",
    "もれ出づる月の、影のさやけさ、",
    "乱れて今朝は、物をこそ思へ、",
    "ただ有明の、月ぞ残れる、",
    "憂きにたへぬは、涙なりけり、",
    "山の奥にも、鹿ぞ鳴くなる、",
    "憂しと見し世ぞ、今は恋しき、",
    "閨のひまさへ、つれなかりけり、",
    "かこち顔なる、わが涙かな、",
    "霧立ちのぼる、秋の夕暮れ、",
    "みをつくしてや、恋ひわたるべき、",
    "忍ぶることの、よわりもぞする、",
    "ぬれにぞぬれし、色はかはらず、",
    "衣かたしき、ひとりかも寝む、",
    "人こそ知らね、かわく間もなし、",
    "あまの小舟の、綱手かなしも、",
    "ふるさと寒く、衣うつなり、",
    "わが立つ杣に、墨染の袖、",
    "ふりゆくものは、わが身なりけり、",
    "焼くや藻塩の、身もこがれつつ、",
    "みそぎぞ夏の、しるしなりける、",
    "世を思ふゆゑに、物思ふ身は、",
    "なほあまりある、昔なりけり、"]

i = 0
t = 5

while 5 > 1:
    x = random.randint(0, 99)
    if not x in random_list:
        random_list.append(x)

        if i == 0:  # 一番最初の読み
            #input("put enter")
            text = CMD_SAY + ' ' + saisyo
            print(text)
            proc = subprocess.Popen(shlex.split(text))
            proc.communicate()
            text = CMD_SAY + ' ' + list_karuta[x]
            print(text)
            proc = subprocess.Popen(shlex.split(text))
            proc.communicate()
            time.sleep(t)
            front_mozi = list_karuta[x]
            i = i + 1
            continue

        elif i == 1:  # 一番最初以降の読み
            #input("put enter")
            text = CMD_SAY + ' ' + front_mozi
            print(text)
            proc = subprocess.Popen(shlex.split(text))
            proc.communicate()
            text = CMD_SAY + ' ' + list_karuta[x]
            print(text)
            proc = subprocess.Popen(shlex.split(text))
            proc.communicate()
            time.sleep(t)
            front_mozi = list_karuta[x]  # 今回の句を記憶する
            continue

        elif len(random_list) == 99:
            break
    else:
        pass


使ってみての感想


リストに入れてある文をランダムで読み上げてくれますが、歴史的仮名遣いや漢字の読み違いがあります。

×
紅葉 もみじ こうよう
衣ほすてふ ころもほすちょう ころもほすてふ


いずれ直していきたいと思います。


お手付きや相手に札を取られたとき、読み上げを停止、再開した場合は ↓ の記事で確認してください。
プログラムを一時停止するには


あと、やっぱり人に読んでもらうが一番いいなと思ってしまった自分もいました。