Raspberry Pi3をシリアルコンソールで初期設定!
皆さん、ごきげんよう。John(われわれはかしこいので)です。
けものフレンズ良かったですね。僕はコウテイペンギン、ハシビロコウあたりが好きです。好き。
今回、Pythonで常時稼働させたいプログラムを考えついたので、怖い怖いと避けてきたRaspberry Piを触ろうと思った次第です。
普段使いはリモートデスクトップでやればいいとして、初期設定はどうしよう。。とぼやいてたら、シリアルコンソールというものがあるよ!と天からお導きがあったので、理解はしてないですが記事にして叩かれないか心配。
備忘録だから!!
シリアルコンソールって何?
僕も知らないけどすっごい素敵な何か。結婚してほしいほどではない。
ディスプレイ無しでRaspberry Piの初期設定が出来るよ!!
必要なもの(というか僕が用意したもの)
・Raspberry Pi3
・microSDカード
・AC電源アダプター(5V 3.0A)&ケーブル
・USB-TTL~え~、、これです。
Amazon | Raspberry Pi ラズベリーパイ用の USB-TTLシリアルコンソールのUSB変換COMケーブルモジュールのケーブル | GAOHOU | USBケーブル通販
・ノートパソコン(Tera Term入り)
以上です。
手順
microSDにOSを入れます
まずOSをダウンロードします。
Download Raspbian for Raspberry Pi
そんで解凍してディスクイメージをmicroSDに書き込みます。
僕はWin32DiskImagerで書き込みました。
設定を弄る
書き込みが終わったらその中にあるであろう、config.txtに
dtoverlay=pi3-miniuart-bt
cmdline.txtに
dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
と付け足します。これは呪文です。Raspberry Pi3にのみ、必要です。
(Bluetoothやらを無効化するだかなんだか)
いざ接続
microSDをぶっ刺して、USB-シリアル変換ケーブルを接続します。
6pinには多分どのケーブルでも黒のGND。
8pinにはUART_RXD。
10pinにはUART_TXD。
UART_RXD、UART_TXDはケーブルの色が多分違うので各自調べて。
ドライバの設定とか
デバイスマネージャーからシリアル変換ケーブルの探し出して、
な感じに設定!!
これでドライバをいい感じに設定してTeraTermでシリアル接続するんですが、、
なんかケーブルの方で問題が発生してるらしく接続できませんでした。
そこでドライバを古いやつにしたら動いた。よかった。
同じ症状の人ためして。
これでRaspberry Piの電源入れたら、TeraTermがほげ~って色々出して、「Loginしろよオラッ!」ってなるので成功です。
終わりに
実は英語できないマンなので、Rasberry piだと思ってました!!
なので、、
User: pi
Password: rasberry
として延々と入れませんでした。
これからもWifiにつながらないなどの問題が起こったので記事にしたいと思っていますが今日はこのへんで。
Tak関数の高速化の宿題を頂いてるので、その記事もぼんやり書こうと思っています。ほげ。
京都まで自転車で行った話
どうもこんにちは。John(任意)です。
今回自転車で京都まで行ってみました!(スタートは明石高専)
その話をまとめ上げたいと思います。
経緯
自転車で旅って面白くね??
それが始まりでした。というか経緯なんてこれだけです。
たまたま京都に行く用事があったので、どうせなら自転車で!!って感じです。
僕の愛車(ママチャリ)
どれ位かかったのか
合計走行距離(往復) 約270km
合計走行時間(往復) 約30時間
マジパネェ。。
大阪で行き帰り1泊ずつして、京都でも1泊。3泊4日の旅になりました。
道のり(適当)
1日目
生活リズムが荒ぶってたので、出発は遅めで8時。
明石海峡大橋
すごく、、おっきいです。。
須磨海浜公園
日曜なのでリア充が多くて自転車を押してた思い出。。
甲子園
野球知らないからあれだけど、高校野球か何か?
淀川
あれなんですね。
軽巡洋艦大淀の聖地じゃないんですね。
ちなみにこのあたりで雨が降ってきてます。
そんで大阪市に到着、知り合いがいたので止めてもらって~って感じでした。
この日で83km、9時間ぐらいでしたね。
2日目
京都へ向かうべく、朝5時に出発。
道中は特に載せる写真もないです。
通天閣は忘れてました。
京都駅
10時40分くらいについてましたね。友人たちとご飯の約束してたので良かった。
魔剤で祝杯
普段飲まない青色をチョイス。
僕はやはり白が好きだった。。
ちなみに下に見える緑のもふもふは寝袋です。
大阪-京都間は山が多くて死にそうになりました。
53kmぐらいでしたね。
京都でわいわい
言うなれば合宿。近畿地区の高専生が集まる交流会です。
高専生が集まって騒ぐとなればこれ。
魔(剤)TEN(GA)楼
部屋が魔剤臭くなりました。
魔TEN楼はこの後も成長を続けました。というか皆徹夜してたし。
3、4日目(帰り)
帰りは天気が良かったのもあり色々適当に撮ってきました。
(スマホの低画質で尚且つボケてたりはする)
改めて淀川
軽巡洋艦淀っているのかな。
桜
早いなぁ、きれいだなぁ、と思って。(健全アッピル)
例のアレ
生では初めて見ました。
老祥記の豚饅
お昼休憩にね。おいしいよね。
ポートタワー
ありえん、ボケみがやばい。
そんでもって改めて明石海峡大橋
やっぱり、、すごく、、おっきいです。。
お昼ごはん(2回目)
どんぶり勘定なんだけど、あのコストパフォーマンスはどうなってるんだろうね。
結構おすすめ。瑞鳳のだし巻きって感じのだし巻き。好き。たべりゅ~!!
最後に
ママチャリだったこともあり、山道はすごい辛かったね。
でもそれ以上に僕一人だけで行ったので、娯楽がなかったのが辛かった。
風景をみるか、足の痙攣を感じるか、幼女に手を振るか、「ようこそジャパリパークへ!」を歌うか。。
だから誰か連れていきたい感じはある。
それと筋肉痛がやばい。1.5日ぐらいが経過したけど、まだ足が痛い。というか足が太くなった気がする。
なのであまりおすすめはしないですが、僕はまたやるつもりです。
よろしくお願いします。(?)
沼津高専カンファでLTしてきたっ!
Cのコードである上、シェルに渡しても動作するプログラムっ!
皆さんこんにちは。John(筋肉)です。
部活やら会計やら課題やらでふえぇ。。ってなってしんどい今日此の頃です。
先輩のいるやんさんから面白いことを聞いたので備忘録ったろうと思って書いてます。
では本題。
このコード、Cのコードとしてどうでしょう?
#define a int main(void){printf("Hello");}
a
コンパイルするとめっちゃwarningやらnoteやら出てきますが、コンパイルできます。
実行すると
Hello
と返してくれます。
当たり前なんでしょうが、なんちゃってプログラマな僕には「#defineのところにそんなのいれれるのか!へ~!」って感じでしたが。。
まだこれではシェルでは動きません。多分。
これを動いたといえるのか??
次にシェルで動くやつ。
#define echo int main(void){printf("Hello");}
#define Hello
echo Hello
どうでしょう??
このコード、めっちゃwarningやnoteが出ますが、コンパイルできますし、
Hello
と、出力もしてくれます。
そんでもってシェルに渡すと、、
% sh hoge.c
Hello
%
こうなります。
すごい。。初めに気づいた人しゅごい。。なんの役に立つのかあれだけど。。
なして動くのか。
ちゃんと動く理由はシェル上では「#」はコメント扱いになるからです。
なのでシェルが実行してるのは
echo Hello
ただそれだけの話となります。
うむ。改めて書いてみるとどうでも良さげなあれだね。
Cだと記号が使いづらい、というか使えないのがちょっと悲しい。。まぁ、同一のコードにする必要ないけど。
まとめ
Pythonでも同じことができそうだな?え、出来るよね?
Python3でスクレイピング!!画像自動ダウンロード!!
皆さんこんにちは。John(筋肉)です。
最近、上司(先輩)であり、尊敬するいるやんさんに勉強会に連れて行っていただきました。
そこで学んだもので少し趣味をしたので、紹介したいと思います。
何作ったのかー
あ艦これBlogという艦これのまとめサイトからページを取得して、自動的にそこに貼ってある画像をダウンロードさせていただくプログラムです。
エロサイトちゃうよっ!!
これがコードだ!!
まず入れるモジュールからー。
import requests
import os
from bs4 import BeautifulSoup
それからダウンロードするときの名前設定、ダウンロード先ファイルを指定したり、ダウンロードするための関数を定義。
def download(keyword):
for img in soup.select(keyword):
file_name = img["src"].split('/')[-1]
res = requests.get(img["src"],stream=True)
if res.status_code == 200:
with open("./downloads/"+number+'/'+file_name,"wb") as file:
for chunk in res.iter_content(chunk_size=2048):
file.write(chunk)
file.close()
Python初心者なので怖い指摘は控えておなシャス!
そんでもって本体?
print("akankore's page number: (example:49295408)")
number = input()
url = requests.get("http://akankore.doorblog.jp/archives/"+number+".html")
soup = BeautifulSoup(url.content,"html.parser")
print(soup.title.string)
if os.path.exists("./downloads") == False:
os.system("mkdir ./downloads")
os.system("mkdir ./downloads/"+number)
download(".t_b a img")
download("a .mt-tweetimg-multi")
うん。なんで3行目、urlって名前にしたんだろう。。reqとかが良さげだのに。
ネーミングセンスや正規表現?に関しては許せ下さい。
これ実行し、49295408と入力すると、
http://akankore.doorblog/archives/49295408.html
の.t_bの中のaの中のimg、またaの中の.mt-tweeting-multiの画像が、./Downloads/49295408/にダウンロードされます!良さ!
49295408は趣m...適当に例としてあげただけだからっ!
ちなみにタイトルと入力するべき番号を取得するプログラムも組んだので無限に画像を得ることもできそう。
まとめ
僕悪いことしてない。健全。
そして無限の可能性を見た。
こここうした方がいいよー、とか、こんな楽しい学問もあるよー、とか、優しく教えてくださいな。ありがとうございました。
Emacsコマンドでテキスト上に文字を入力したい
どうもこんにちは。John(筋肉)です。今日3つめです。
今回はEmacsコマンドでテキスト上に文字を入力したいという記事です。
これは「次の行に移動」するコマンドと「行の最後に移動」するコマンド、「空白の入力」を一つのショートカットで行ってほしい時、空白の入力に関してパッと調べただけでは出なかったので書きたいと思いました。
英単語をまとめたい
始まりはこれでした。持ってる英単語帳をそのままデータ化したかったのです。
cease するのをやめる
conclude と結論づける
vanish 姿を消す
bury を埋葬する
collapse 壊れる
こういうのを楽に作りたかった。そこで僕は、楽な方法は、
cease
conclude
vanish
bury
collapse
と入力してから、日本語訳を打ち込むこと。と考えました。
つまり、英単語と空白を入力したあと、次の行に移動し、行の最後に移動し、日本語訳を入力するのが簡単で楽だと。。
しかし、英単語のあと空白入力が面倒くさい。
しかも半角空白で入力したいので、日本語訳を入力するたびに全角/半角を入れかえないといけない。
なので空白を入力するすべを探しました。
init.elにはこう書きました!
(defun end-of-next-line(null)
(interactive "i")
(next-line)
(end-of-line)
(insert " "))
(global-set-key [(C q)] 'end-of-next-line)
insertがわかんなかったんだよねぇ。調べてもバッファに文字を出力するやつとかしかでなくて。
これのおかげで便利になり、英単語はまとめれたよ!ありがとうinsert!
(ありがとうございました。またこんな方法もあるよ!という方教えてくださいお願いします。)
平泳ぎ、背泳ぎで注意するべき点。
どうも。John(筋肉)です。
引き続き水泳に関して書きたいと思います。クロール以外は大して聞いてなく、内容も薄いです。
(前の記事はクロールに関してでした。)
平泳ぎについて
正直よくわかんなかった。専門じゃないから仕方ないね!
・腰を高く、重心を前に
手の搔きを小さくし、頭というか、重心を前に持っていくよう言われました。また重心を前に持っていきながら、潜らず、上下運動が少なく、小さくなるようにと。
そして腰が低いとスピードが乗らないとも言われましたね。
当たり前っちゃ当たり前なので、これ以上何も言えない。。
、、専門じゃないし興味ないからこんなでいいかな?
でも備忘録には書きたかったので少し失礼。
背泳ぎについて
・キャッチは肩の上
クロール同様当たり前なことで、難しい。。
しかも、ローリングのせいでさらに難しくなるし。。
キャッチの一に関しては、動画でも撮ってもらって確認する方が良さそうですね。
しまった。背泳ぎもこれで終わってしまった。クロール中心に聞いていたので、こんなもんかしら?
しいてもう1点言うとすれば、キックを均等にってぐらいですかね。僕めっちゃキック汚いので。。
とまぁ、これだけの内容のないものになってしまい申し訳無いです。技術系も頑張ろう。