夏休みの工作 リレーを鳴らす
概要
リレーを発振させるのはだいたい配線ミスなど.よくはない.しかし,あえてリレーを発振させることでメロディーを奏でられるのではないかと思い,厳選したリレーを鳴らしてみた.接点応答に対して高速なので,接点がぶつかる音というより,微振動する音なのではないかと思う.
手間を減らすために,5Vリレーでやりたかったが,音が小さかったり,そもそもリニアに音を変化させられなかったりして厳しいところだった.やむを得ず12Vリレーにしてみたところ,音質は良くないが,まあまあ演奏はできそうなリレーを確認.
G6A-274P(omron)
まあ,とても楽器とは言えないものになってしまった.TK並みにサウンドを奏でたかったのに,ざんねん.
youtu.be
今回,鍵盤などではなく,ツマミ入力での音設定がどうかというのも気になっていたので合わせて実装した.というのも相対音感の人は「今より少し高い音」みたいな指定のほうが演奏しやすい気がした.世の中でいうとオタマトーンのような感じ.が,ツマミは回転方向の移動故に,感覚基準位置がずれるため相対的な操作が難しい.
夏休みの工作 クリック爆弾
平日が多忙を極め(単純にスケジュールが詰まる)ようやくフリータイム.
概要
夏休み初日に1つめの作品として「クリック爆弾」を作成した.これはアプリを起動中,左クリックを押下すると左上から700pxの範囲内でランダム位置に爆発が発生するというジョークアプリ.親のパソコンのに仕込んだところ焦りだし,その状態をみて爆笑の渦.(Youtuberならこういうのの反応を撮って動画にするんだろうな)
実装
GetASyncKeyState APIにて左クリック(LButton)を監視,押下されていれば爆弾アニメーションを画面内に表示する.
爆弾アニメーションは透明フォームとし,フォーム表示後自動で爆弾アニメーションを表示し,消えるフォームクラスとして実装した.終了はタスクマネージャから.
sametime,LINEユーザーなんだが,slackを使い始めてみた
Slack
リモートワーク(≒いろんなとこで、スタイルで仕事しましょう)ツールの一つとして登場.LINE、Twitterのようなメッセージ機能と、SNS、外部ツール連携に長けたコミュニケーションツールという感じ?
Searchable Log of All Conversation and Knowledgeのイニシャルを取っており,会話やらを一過性の流れてくものにしないようにするツール?
個人的に調べただけでは,LINEに対するメリットがよくわからなかった.GitHub*1,Todoist*2と連携できるのは聞こえがよく,いちおうシリコンバレー発信というかっこよい箔がついている.あと,「LINE社とかsansanとかみんなつかってるよ!」的な表現をよく見る.
ちなみに自分は自席ではNOTESのsame time.出先,実験場などではLINEで業務連絡をしている.最近では,強力な協力者が2人ほどいるためコミュニケーションの取り方が進行の具合を決めるといっていいくらい.
そんな自分が実際に1週間使ったので,このツールの良さをはなんなのか,何ぜそんな流行ってるのかを確認する.
※英語を使用しているが,日本設定も可能だ.
使用端末 | HUAWEI WAS-LX2J P10 Lite |
OS | Android 7.0 |
はじめりんぐ
アプリをダウンロード.メールアドレス1つ登録し,ワークスペース(LINEでいうトーク部屋)を作成する.プロフ画,bioの類はワークスペースごとの設定になるっぽい.ここがミソで,A社向けワークスペース,B社向けワークスペースで異なる顔がある場合に対応が可能というわけ.ここがビジネス向けなんだなと.LINE個人アカウントで「この間食った肉がプロフ画」など,私生活が社外メンバーにいつも丸出しになることが起こらないわけだ.(体裁)
とりあえず,ワークスペース,アカウントの考え方がプロジェクト参画を意図している印象.
ご招待
Invite画面でメールアドレスを指定して招待する.メルアドだけのつながりっていうところが,ビジネスではいいのかもしれない?
連絡のスタイル
ワークスペースのメンバーを,さらに「チャンネル」という単位で所属させる.「A製品の開発」など,目的の単位でアサインすることで,関係メンバーでチャットができるようになる.よって,社員全員が所属するワークスペースを作りA製品とB製品でチャンネルを設けるようなイメージ.
また,あらかじめ下記の2つのチャンネルがある.なにげに無難でこの2つで事足りる.
- #general---ワークスペース全体のチャンネル.出張先の居場所など全体通知などに利用する.
- #random---業務に関係ない,雑談用のチャンネル.飲み会関係はこの辺で話したりするといいかも.
LINEではグループの中にさらに子グループなんてことはできないので,チーム分担作戦などではグループ管理が煩雑になる反面,Slackでは目的別にチャンネル,スレッドが作れるため管理はやりやすい.
▼独り言的につぶやいてもいいのだ
実際の良い感じ悪い感じ
自分含めた3名でSlackチャンネルを起こし,LINEの代わりにコミュニケーションをとってみた.
【Good】
- 重点の低いglobalチャンネルで進捗や状況をツイート的にさらっと伝えたりなんてことがしやすい
→LINEだと既読がついたりするため,しょうもないことなどとても言えたものではないが,Twitter的な感じがGood!
- メッセージにスターつけてToDoリストのようなことができる
→SNSだと流れてしまうようなことをブックマークできるのでGood!
- (これから実施予定)Todoistと連携するとタスクリストが作れるらしい
→Tasks channelでも起こしてメンバーにタスクをアサインするなんてできたら最高!
気が向いたらTodoistも1記事起こすかもしれない・・・
▼スターを付けてブックマーク,忘れ防止によい
【Bat】
- メッセージ,メンションがあったときにLINEのようなポップ通知がほしい.
→ビジネスの話なので,全部が全部勝手に出るのは困るなんてこともあるかも!?
- 用意されてる通知音が基本的に地味なので,気づかないなんてことが多々.
じーさんを老人ホームにお願いするときに工夫したこと! +α思ったこと
在住地域の話だが、仕組み自体は同じなのではないかと思う。
●老人ホームとは
自宅で介護が困難な高齢者に対し終末まで過ごすための施設。
要介護認定3以上で入所申請が可能になる。定性的に付けられるが、中でも3(以上)というのは、ほとんど一人で生きていけない状態になる。(要介護は1~5まである)
基本的には部屋は埋まっており、申請後、空くまで待つことになる。また、申請後の順番待ちも時系列ではなく、本人状態、介護環境を総合して点数付けし優先順位が決まるものとなっている。極端な話、家がなく介護者がいない(代理者が介護し
、ネカフェで生活など)なら最高得点になるようなイメージ。
そして、部屋が空く。というのは亡くなるか入院のどちらかになる。数施設回ってみたが15人以上は申し込みがあるような印象だった。複数施設への同時申請可能のため、重複もあるだろうが。
ちなみに申請時4番目待ちだったが、1か月後に入所でき、「奇跡的な速さです」とのことだった。
●取組み
年間で50万ほど浮かせることができる見込み。利用料がじーさんの年金を越えてしまっていたら緊急事態であった。
その1:福祉給付金制度の利用 マルフク
病院時代の話だが、一か月10万くらいはざらにいく。(医療費、部屋代、食費もろもろ)
福祉給付金(通称マルフク)を受けると医療費だったかが、無料になるのだ。
これで病院の入院代は月7万程度だった。
その2:非課税にする 福祉認定 特別障害者
年金受給者は諸々に所得控除されるが、じーさんは所得がわずかに残るため、課税者になる。すると、老人ホームは9~12万円ほどになる。月々10数万だとしたら結構な額だ。非課税なら6~8万ほど。これは1日当たりの利用料に「限度額」が発生するからだ。
ここで、福祉認定 特別障害者認定の登場。障害者手帳のない人でも、障害者と同じ税制待遇を受けることができる。
・障害者控除300,000万(じーさんの場合なくてもよいが)
そして、障害者で所得125万円以下であれば、非課税となる(所得、均等割りともに)
市税局に突撃し申請。非課税にすることで、利用料金を抑えることができた。タイミングも良かった。
その3:適切な家賃にする
世帯主が変わるので当然必要なのだが、市営住宅は世帯主の年収で再申請することで家賃が下がる。この辺は実は複雑で、継承という形の手続きを行うのだが、行わなくても済んでしまうこともあるためやっておく。
おそらく1万円くらい安くなると思っている。
その4:役場のカタログを活用すべし
待ち時間にカタログを読んで勉強する。税金の仕組み、障害者認定など、とくに税金の冊子はためになるので読んでおくべし。
何冊かは家の固定本に仲間入りしたほどだ。
●思ったこと
パソコン作業やってるだけのエセIT
たくさん同じことを書いた紙を複数の窓口に提出した。これを役場の人が目視チェックし、手で入力しているのだろうか。昭和から時計の針が止まっているようである。まあ、手書きする機会がないのでたまにはいいかと思ったが、パソコンで作業すればITではない。情報を使いこなして効率化するのがIT。
マイナンバーが無駄な仕事を増やした
マイナンバーを書く欄が用意されている。単純に手書き欄が増えただけのように思える。今回はマイナンバーなしで行ける申請だったが、あの桁数の手書きを要求されると思うと無駄が増えたとしか思えない。本来役場にすべて情報があるのだから、認証してオンライン上で処理するか、どうしても紙ならばドットインパクト印刷すればいいのではないだろうか。
ていねいにいこう
丁寧にいくと役場の人も通してくれたりする。当然条件があり、年間所得や課税状態など定量的な条件は通らないが、本人状態や状況など定性的な条件については人情的な采配がある。個人で物差しが変わる申請はていねいにいけば通ったり、新しい提案をもらえる。
カムリを買った
●とりあえず、つかれた
車庫証明の印をもらい、ローン申請。印鑑証明は水曜日に取りに行く。この辺の手続きはプリミティブ過ぎて疲れるし時間ばかりかかる。
●いきさつ
今乗ってるカローラアクシオが10年目になり、そろそろ違うのにしてもいいかなあと、カローラ買った中古車ディーラーに行った。
割と暇つぶしのつもりで…
そしたら160万でカムリ5年落ちを発見。密かに秘めていたカムリ乗りたい情熱が燃え上がり、即決。
おっちゃん「ちょうど最近値下げしたんだわ」
と。確かにちょっと前のチラシは180万ちょい、ラッキーすぎた。
多分僅かにタイミングが違うだけで売れてしまってた事だろう。
●カムリ
もともとマークエックスの下に位置していて日本ではほぼ人気なし。確かにカムリはあまり見かけない。最近はチラチラ見かけるようにはなってきたが・・・
だが、アメリカでは人気というのは有名な話。大きいからだったか?
そんで、最新モデルになるとTNGAフルプッシュ仕様で、高燃費にスタイリッシュボディ。間違いなく日本でも流行っていく予感しかない。
さらに、ほんとは最上位のクラウンしかつかない装備がつくようになって違いも減ってきてる。隣にあったクラウンロイヤルと内装はほぼ一緒だったくらいだ。
カムリは本当に際立つ。その存在感、そこがいい。
●ローンを組んだ
ごそっと金が抜けると生活が変わるので、携帯代くらいの気づかない額で引かれるほうがいいと思って3年払い。毎月1万円、ボーナス月は20万円。
人生初のローンである。
いつかカムリに乗りたいと思ってたがこんなに早くもかなうとは。
納車が楽しみ。
Python3でWebサイトのデータを取ってみた(PyCharmはじめ)
●こんにちわ!
PyCharmを導入してみたのでちょっと遊んでみた
結果的に作りたいものは作れなかった
もうちょい腕を磨けばできると信じて棚にそっとしまう
(来週もう一度トライすることにする・・・)
ちなみに、こういうのでデータを拾ってくのを、Webスクレイピング(クローラー)といって、しつこくやると違法だったり、そもそも認めていないサイトもあるらしく
軽率にやるのは注意が要りそう
↓この記事が有名らしい(これ自体は違法ではないよう)
岡崎市立中央図書館事件 - Wikipedia
●使用環境
JetBrains PyCharm |
Python 3.6 |
●ライブラリの準備
今回は2つのパッケージを、Default SettingのProject Interpreterからインストールします
1.Project Interpreterを開く
[File]-[Default Settings] [Project Interpreter]とクリック
最初はpipとsetuptoolsくらいしかないので、ここに必要なパッケージを足していく
▼他にもあるがこんな感じ
2.パッケージの追加
今回は下記の2つを使用した
beautifulsoup4 |
urllib3 |
画面右の緑の+(プラスアイコン)をクリックする
次の画面で「beautifulsoup4」と検索すると絞られるので
beautifulsoup4を選択した状態で、「Install Package」をクリックしOK
同様にurllib3もインストールする
元の画面もOKで閉じると導入が完了する
3.コード
検索ワードを渡すとタイトルを返すイメージ
Pythonで検索し、結果のtitle_bar内のpのテキストを表示する
# -*- coding: utf-8 -*- from time import sleep import urllib.request from bs4 import BeautifulSoup def web_test(wd): # オープンする(urlはテスト用なのでそのままでは使用不可) html = urllib.request.urlopen('https://www.example.com/search?q=%s' % wd).read() soup = BeautifulSoup(html, 'lxml') # print(soup) # 結果を確認できる # ページタイトルを表示 print('title:%s' % soup.title.string) # 特定のタグを抽出 title_bar = soup.find(id='title_bar') p = title_bar.find('p') print(p) sleep(1.5) # これを抜くとすごい速さでリクエストしてしまう危険 if __name__ == '__main__': res = web_getword('Python') if res is None: break print(res)
Pythonで検索した結果の1つめを表示している
もっと頑張ればいろいろやれることだろう
●補足
Project Interpreterはどうやらプロジェクトごとに作れるみたい
たぶん、このプロジェクトは古めのライブラリで、とかPython2.7でやりたい・・・
なんて使い分けを実現するためだと思う。
なので、パッケージを導入する際は、目的のInterpreter構成を選択していることを確認する必要がある。
ハフ変換 エクセルでアルゴリズムを確認してみたったあざす
●ごあいさつ
すっごいひっさびさで、はてぶろエディタ、
どうつかうんだっけ?!!???
もう、?と!が2:1の比率なくらいで、戸惑いながら書いていきます
エクセルでやってるので、すぐ確認できると思います
なんかの役に立てば幸いです
●ハフ変換の概要
本題です
OpenCVでは序盤の終わりくらいで登場する、「直線(円)を検出するためのアルゴリズム」です。
テスト解答欄の枠だったり、道路の白線認識だったり、人間は区切るのに直線を使用します。
だから、直線を認識できるのはコンピュータにとってもありがたいのです。
ここでは標準ハフ変換を書いていきます。それしか実験してないので。
●仕組み
ハフ変換による直線検出 — OpenCV-Python Tutorials 1 documentation
教科書的な説明は ↑ でやっていただけます。
ざっくりいうと
画像を輪郭だけにして、画素1つ1つに注目して想定しうるすべての直線パターンを
配列にカウントする。一番カウントされる直線パターンが直線だ!
ここで大事なのは座標系で、直線というと普通は "y = ax + b" だったり "(x1, y1)と(x2, y2)を通る"とか表すが
"原点から何度(θ)にいくら(ρ)の垂線を持つ"であらわすこと
よって、直線は
ρ = xcosθ + ysinθ
と一般化できる
●エクセルで実装
後悔・・・すごい重い。エクセル方眼並みの大罪
ブックは下記に配置します
github.com
要点をまとめると
・オートシェイプが画像の輪郭ピクセルに相当する
オートシェイプ、自由に足してよいです。そこがみそで
点が持つ仮想線分のプロファイルがどう変わるかを体感できます
・すべてのオートシェイプ座標に対し2°分解能で仮想線分のρとθをセルにカウント(投票/Vote)
・セルには条件付き書式があり、値が大きいとオレンジになる
・オレンジに相当するρとθが、各点が共通して持つ線分である
・直線を具体的に求めたいなら、閾値を設けて閾値以上を直線と判定すればよい
(閾値は当然画像中の点を越えることはない)
●さいごに
計算量は点の数 * (180 / θ)くらいになるので
これを改善したのが「確率的ハフ変換」になります。
これはよくわかっていません。
ある点とある点を結べばその間にも点があるだろう、みたいな?
わかんね。
アディオス