595の8×8LEDマトリクスが、微妙に不調だったので、
一緒に買ってきたSR-04超音波測距センサを弄ってみる。
http://www.aitendo.com/product/7402
デジタル制御で、タイミングだけ見ればいい、簡単な
つくりなんだけど、ゼロからスケッチ書くのもアレだな
と思って、参考になるスケッチを探す。
http://marupeke296.com/EL_Ard_No8_SuperSonic.html
こちらのスケッチを参考にさせていただいて、
音速とか、センサの有効範囲とか、それらからの計算式
とかをもうちょっと弄りやすいようにくくりだした
スケッチに換えてみた。
unsigned long interval;
double distance;
const int sp = 340; // sonic speed (340m/s)
const int ra = 4 * 2; // range (both ways : 4m * 2)
const unsigned long lim_us = 1000000 / (sp / ra) * 1.05;
int trig = 2; // trig (out)
int echo = 3; // echo (in)
void setup() {
pinMode( trig, OUTPUT );
pinMode( echo, INPUT );
Serial.begin( 9600 );
while (!Serial) {
}
}
void loop() {
//if ( Serial.available() > 0 ) {
//Serial.read();
// pulse !
digitalWrite( 2, HIGH );
delayMicroseconds( 20 );
digitalWrite( 2, LOW );
// mesure the interval
interval = pulseIn( echo, HIGH, lim_us);
distance = interval * 0.017; // cm
if (distance != 0) {
Serial.print( interval, DEC );
Serial.print( "\t" );
Serial.println( distance, 4 );
} else {
Serial.println( "out of range." );
}
delay (500);
}
音速はとりあえず340m固定、センサの測距レンジは
4m×往復で2倍としてある。
(SR-04の測定レンジは4mまでなので)
それを元に、測定時間の制限を計算してて(変数lim_us)、
温度変化で音速がちょっと変わっちゃってもカバーできる
ように、少し大目の5%増しにしてある。
実際は、温度センサをさらに加えて、音速を微調整したり、
制限時間もそれなりに微調整して、正確に4m内をセンチ単位
で測定するとよさそう。
動かしてみた。
メジャーで正確に測ったわけじゃないんだけど、まぁ、
だいたい見た目どおりのレンジが測れているので、
モジュール搭載のクリスタルさえそれなりの精度なら、
まぁ距離は正確に取れてるでしょう。
4mをちょっと超えると、「out of range.」って表示
される。
拾える範囲(角度)は、あまり正確なところを調べて
いないんだけど、なんとなく大丈夫っぽい気がする。
ちなみに、スペックで言われている角度に比べて、
近いところは広めに、遠いところは狭めに拾って
いるみたいな気がする。
このモジュール、便利だから、この回路をそのまま
利用して、水中が測距できるとおもしろいんだけど、
https://web.sfc.keio.ac.jp/~t14358nk/nanajufwiplast_v2.pdf
こないだのこのpdfのように、そのままではいろいろ
都合が悪いみたい。
このセンサって、たしか防水のやつだった記憶が
あるけど、これって、水中用センサだったのかな?
なんか、防水タイプだけど空中用のセンサな気が。
パワー不足って触れられているけど、パワーじゃなく、
もしかしたら、センサと空気の間のインピーダンスが
合ってないからじゃないか?っていう気もする。
オイラは物理学苦手だから、こういうときどうやって
インピーダンスあわせればいいのか、いまいちよく
わかってないんだけど、以前考えたような、アルミ棒
を使ってそこそこ水中とインピーダンス合わせて、
市販の圧電スピーカで魚探作れないか、やってみたい
んだよな。
https://twitter.com/joker_budou/status/769500213748699136
ものには程度ってものが…
https://twitter.com/kuina_ch/status/767883737853931520
これだ。
「科学は万能じゃない!」とか拒絶する人には、
とりあえずこの一言か。
https://twitter.com/onsen_tamagon/status/770117963047432192
segaっぽい。
https://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%83%B3%E3%82%BF%E3%82%B8%E3%83%BC%E3%82%BE%E3%83%BC%E3%83%B3
昨日の、Cドライブが気づいたら残り2GBだった件。
ちょっと時間掛けつつ、VM環境のデータを、100GBほど
別のドライブに移植した。
お試しでインストールした軽量Linuxとかは、真剣に
使ってるわけじゃないので、消しちゃって、あとで
使いたくなったらまたインストールすればいいんだよな
と思いつつ消しちゃいけないデータがホントに無いか
調べないのもあれなので、一旦全部移植。
普段使いのUbuntu16.04とLinux Mintについては、
とりあえず立ち上がることは確認。
最近、ほとんどMintばかり弄ってるので、Mintに集約
しちゃってもいいんだよな。使えるソフトのリポジトリ
なんか、普通にUbuntuのままだし。デスクトップテーマ
の統一性とか、見易さとか、操作性の自然さとかも
XFCEよりMintの方が統一取れてる感あって、イイカンジ
だしな。
んで、古いOSからちょっとずつ、Dropbox経由でデータ
の移植をしつつあるんだけど、なんか、以前取った
ハードコピーが、Dropboxに移動されない事象発生。
何じゃこりゃ、と思ったんだんだけど、
http://yutcc.blogspot.jp/2014/01/ubuntu-screenshot-dropbox-windows-doukisarenai.html
コロン(「:」)が悪さしてるみたい。
というわけで、取得済みのハードコピーについては、
適当にファイル名を修正しちゃって、あとは、
今後のために、shutterをインストールしておいた。
(ファイル名のフォーマットを好きなように設定できる)
http://www3.nhk.or.jp/news/html/20160829/k10010658241000.html
ふーーーん…。こんなこと、本当にできるのかな?
これって、文章読むと、
「混合気を音速にちかい速度でシリンダーに
送り込んで、シリンダー中心付近で爆発させて、
シリンダーが吸収して廃熱される熱エネルギー
を少なくすることで、効率を上げる」
みたいな文脈だろうと思うんだけど、ほんとにできる
のかな?
まず、音速近い速度で混合気を噴射するのにエネルギー
が必要だろうし(ターボとかで無理やり過給しても
難しそう)、混合気をそんなに加速するには圧力が
必要だろうから、そんな状態まで圧力かけたら、
ディーゼルエンジンのシリンダよろしく、即ドカン
と点火しちゃう気がする。
直噴+圧縮空気ならわかんないでもないけど…
なんか、微妙なエンジンだねぇ。
もしこれがオカルトとかじゃなければなかなかの
技術革新だと思うんだけどな。これ、本当に実用化
したら、火力発電所の効率と同じくらいになっちゃう
んだよな。
https://twitter.com/MailOnline/status/770163982279774208
神回避!!!
https://twitter.com/syatikuzyanai/status/768246338353901568
こういうソフト作って売ったら、すんごい儲かりそう。
ジーちゃん、これをビジネスチャンスにしたらよかった
のになぁ。
http://qiita.com/ganta-viii@github/items/b984519ad24ac3c7d7d5
OpenSCAD、すごい解りやすくまとまってる。
http://mainichi.jp/articles/20160830/k00/00m/040/052000c
これは凄い。倫理的な問題がクリアできるのかがよく
わかんないんだけど、自分自身のミトコンドリアを
移植するなら、神の領域に踏み込んでないような気も
するけど、なんか微妙ではある。
ひとつの細胞内のミトコンドリアって、全部同じ
遺伝情報を持っているものなの?
そもそも、一人の人の細胞1個1個を比べてみて、
それぞれのミトコンドリア数って、まちまちなの?
まちまちでかつ、全部同じ遺伝情報なら、倫理上は
あまり問題ないような気がするけど。
ただ、これが有効かどうかは、そもそもミトコンドリア
の活性が原因なのかどうかにもよる気がするなぁ。