2018年5月20日日曜日

プリンタを無線LAN接続に

今までプリンタに関してはUSB接続で使っていましたが、無線LAN接続に変更しました。プリンタを買って、すぐに無線LAN接続にしたのですが、ルータのせいなのか自分がよくわかってなかったのか、印刷するときにどうも接続できなくて時間だけかかって結局USB接続で印刷していて、それが自分の中でプリンタの無線接続は難しいという頭になってしまいました。

最近、プリンタを頻繁に使っているわけではないのですが、印刷する際に、ノートパソコンをその都度プリンタのそばに持っていき、USB接続していましたが、やはり無線で印刷できるのだからと思い直し、設定も自動モード的なことで短時間で済ませました。以前と違うのは、ルータを変えたくらいですが、前にうまくいかないと思っていたのはよく原因はわからないままです。

前にうまくいかなかったとしても、またチャレンジしないままというのはもしかしたら、もったいないことなのかもしれません。

2018年5月19日土曜日

なかなか着手できない理由

プログラミングにしても、工作にしても、作業を始めるまでにかなり時間がかかってしまいます。

その感覚は、

めんどくさい
ちょっとやったくらいじゃどうにもならない
失敗したらどうしよう

そんな感覚なのかなと思いましたが、

どうも、めんどくさいという感覚はそれほどでもないようです。

それよりは,ちょっとやったくらいじゃどうにもならない。失敗したらどうしよう。のほうが強そうです。

簡単にはいかないかもしれませんが、
「まずはテスト」気軽にスタート。そんなか感覚に「慣れたら」いいなと思います。

仕掛からないと、前に進めませんもんね。

2018年5月18日金曜日

連続的なシリアル通信

コンピュータのプログラムでファイルの扱いは、
オープンして、
読んで、書いて、
クローズする。
これが基本です。

シリアル通信に関しても基本は同じ。
シリアルポートをオープンして、
データ送信して、データ受信して、
ポートクローズ

2秒間隔で、シリアル通信を連続的に行う場合一応、基本に忠実に
シリアルポートのオープン、クローズをその都度行ってみたのですが
長時間のあいだにどうも、変なデータを受信するようなログが残りました。

シリアル通信といっても正確には、スイッチのON、OFFを2秒間隔でみるために
ある基板に対して、入力モードに設定して、そのあと5Vのなのか0Vなのかをみてそれをシリアルデータで送ってくるというものです

ループの中で
オープン
基板の入力設定
スイッチの状態をみる
クローズ

をくりかえしていたのを、思い切って

オープン
基板の入力設定
ループ開始
 スイッチの状態をみる
ループ終了

というようにかえてみました。

クローズが無しになってますが、1日1回、プロクラムを終了し、パソコンを自動で再起動させるという仕組み。連続で動かし続けることがかなり大変だというのを、今実感しています。

2018年5月17日木曜日

ラズベリーパイ3 バックアップしたSDを別のラズパイに挿入

少し略して書きますが、ラズベリーパイ3。パソコンなど使ってSDをバックアップして、バックアップしたSDで差し替えて、同じラズベリーパイ3は普通に起動するのは試しました。

バックアップしたSDを他のラズベリーパイ3に挿入して同じように動くのか確かめてみました。結果は、大丈夫そうです。(この時オリジナルのラズベリーパイ3は動いていない前提)固定IPアドレスなども普通に同じでした。もしかしたらMACアドレスが関係するものがあるのかもしれませんが、今のところそれは感じていません。

2018年5月16日水曜日

ラズベリーパイのSDのバックアップと復元

バックアップ
1.現状のラズベリーパイのSDをWindowsパソコンに認識させる。
2.ドライブが複数認識された。
3.Win32DiskImagerを使用して、まずはSDの内容をパソコンのハードディスクに保存する。(Read)(これがイメージファイルでバックアップになる)
事前に例えばabc.imgという空ファイルを作成しておいて、そこに上書きでイメージファイルを作成する感じ。

復元
4.新しいSDをパソコンに認識させる。SD Card Formatterでフォーマットする。
5.Win32DiskImagerを使用してパソコン内にあるイメージファイルをSDに書き込む。(Write)(これが復元)(最終的にドライブが複数認識される感じになった)

2018年5月15日火曜日

ネット越しでラズベリーパイのシリアル通信

ネット越しといっても、ラズベリーパイ単体での話。

phpからpythonを実行してpythonの側でシリアル通信を行うときに
sudo chmod 666 /dev/ttyUSB0
を行う必要があることを教えてもらいました。

(シリアルポートのアクセス権)

pythonのソースは、テスト中のもので、実際にはコメントを外したり、リテラルをとったりしないと正しく動かない。