暇つぶしのエントロピー

暇つぶしに何して遊んだか記録していく。少し続いたと思ってたら更新飽きた!最近は工作ブログになりつつある。

Raspberry PI でステッピングモーターを回す。

  • 12月
  • 19

モーターとモータードライバーは eBay で調達しました。1セット 358 円。

モーターは 4相 DC 5V の 28YBJ-48 で1ステップ 5.625 (=360/64) 度がさらに 1/64 に分周されているらしい。

ドライバーは ULN2003。ドライバーといっても ULN2003 は単なるトランジスタアレイなので「1度右に!」とかじゃなくて、正しい順番にコイルを励磁してあげる必要があるらしい。

こちらを参考に ブレッドボード使って
SnapCrab_lasermoterCE3_20160104184723pdf - Google Chrome_2016-1-4_18-55-30_No-00
こんな感じで繋ぐ….
IMG_0699

ステッピングモーターはあまり早く動かすと脱調するらしい。ここの PDF によると 28YBJ-48 は 100Hz らしい。(ん~、64*64=4,096 だから 1周最速40秒かかるのか。)

Python でプログラムを書くことにする。

高いトルクが得られる2-2相励磁にで…

とりあえず回転することを確認したいので適当なコードで…
[python]
import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BCM)
GPIO.cleanup()
GPIO.setup(17, GPIO.OUT)
GPIO.setup(18, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)

GPIO.output(17, GPIO.LOW)
GPIO.output(18, GPIO.LOW)
GPIO.output(27, GPIO.LOW)
GPIO.output(22, GPIO.LOW)

for i in range(0,360):

GPIO.output(17, GPIO.HIGH)
GPIO.output(18, GPIO.HIGH)
GPIO.output(27, GPIO.LOW)
GPIO.output(22, GPIO.LOW)

time.sleep(0.02)

GPIO.output(17, GPIO.LOW)
GPIO.output(18, GPIO.HIGH)
GPIO.output(27, GPIO.HIGH)
GPIO.output(22, GPIO.LOW)

time.sleep(0.02)

GPIO.output(17, GPIO.LOW)
GPIO.output(18, GPIO.LOW)
GPIO.output(27, GPIO.HIGH)
GPIO.output(22, GPIO.HIGH)

time.sleep(0.02)

GPIO.output(17, GPIO.HIGH)
GPIO.output(18, GPIO.LOW)
GPIO.output(27, GPIO.LOW)
GPIO.output(22, GPIO.HIGH)

time.sleep(0.02)

GPIO.cleanup()
[/python]
回った!

クラス、適当に設計していきます。


Raspberry PI でステッピングモーターを回す。 はコメントを受け付けていませんPython, Raspberry Pi, お買い物, コンピュータ

バウ用3Dスキャナに挑戦

  • 12月
  • 14

カヤックのバウ先には硬質発泡ウレタンを削ってフットブレイスを作成することがあるけど内側だしどんな感じで作成するのか結構難しい。

最近、Kickstarter を見てると Rubicon 3D scannereora 3D のようにラインレーザーを使用したプロジェクトがいくつか見つかります。

う~む、これらは対象物を回転させるタイプなのでバウ先のスキャンには使えなさそう….

でもラインレーザーを使うと3Dスキャナって簡単に作れるの?と情報を探すと….『【俺センシング】『Webカメラで3Dスキャナ!』』「【3Dスキャナへの道】」のところに原理が….

をっ、なるほど!作れなくもないかも….とりあえず部品集め。

カメラは…Raspberry Pi を使おう。ラインレーザーとステッピングモーターは…eBay を探す。どっちも 500円しないくらいで買えるじゃん。早速注文。

IMG_0670
届いた。

ちゃんとした形にくみ上げる前にちょっと実験。

バウにラインレーザー発光させてデジカメで写真撮ってみる。
IMG_0666

先日インストールした Python で….グレースケールにする。
[python]from PIL import Image
import ImageOps

if __name__ == "__main__":

img = Image.open("C:/devel/IMG_1234.JPG")
img2 = ImageOps.grayscale(img)
img2.save("C:/devel/IMG_1234Glay.jpg","JPEG")
[/python]
えっ?こんな簡単?
IMG_0666L
いいじゃん。

横1ラインで一番明るい1点のみにしてみる。
[python]from PIL import Image
import ImageOps

if __name__ == "__main__":

img = Image.open("C:/devel/IMG_1234.JPG")
img2 = ImageOps.grayscale(img)
img2.save("C:/devel/IMG_1234Glay.jpg","JPEG")
w, h = img2.size
pix = img2.load()

for y in range(0, h):
c=0
for x in range(0, w):
if c<pix[x, y]:
c=pix[x, y]
for x in range(0, w):
if c==pix[x, y] and c>127:
pix[x, y]=255
c=999
else:
pix[x, y]=0

img2.save("C:/devel/IMG_1234GlayLine.jpg","JPEG")
[/python]
こんな感じかな。
IMG_0666L3
さぁ、計算だ!

と思ったけど、写真縮小しちゃいけないし、カメラごとに補正しなきゃいけないので計算はするのやめました。本番は Raspberry PI のカメラを使う予定なので。


バウ用3Dスキャナに挑戦 はコメントを受け付けていませんPython, お買い物, カヤック, 工作・修理

Windows に Python をインストール

  • 12月
  • 13

Python for Windows インストールメモ』を参考にインストール。

(最初、3.5 をインストールしたけど OpenCV と PIL の対応が 2.7 だったから 2.7 をインストールしなおした。(Pillow の存在を知ったのはさらにその後だったりします。))

とりあえず

  • Python for Windows
  • setuptools (easy_install)
  • pip
  • Numpy/Scipy
  • Python Imaging Library (PIL)
  • OpenCV

この辺をインストール


Windows に Python をインストール はコメントを受け付けていませんPython, コンピュータ

Blynk から ESP8266 使う…

  • 11月
  • 9

Blynk は KickStater で『5分でアプリがビルドできる』と始まったプロジェクトで面白そうと出資してたので使えるようにしたい。

ドキュメントはこちらにありますが、ESP8266 の設定については こちらに書かれています。

インストール手順は….こちらにもありますが、以下の手順です。

  1. Arduino のウェブサイトから Arduino 1.6.5 をダウンロードしてインストールします。
  2. Arduino を起動し、ファイル・メニューの環境設定ダイアログのAdditional Board Manager URLs に http://arduino.esp8266.com/stable/package_esp8266com_index.json って入力します。(もし複数指定する際にはカンマ区切りで。)
  3. ツール・メニューのボードをポイントして表示されるサブメニューから ボードマネージャー を開き、ESP8266 をインストールします。インストールしたらツール・メニューのボードで使用する ESP8266ボードを選択する。
  4. Blynk ライブラリ のうち「Source code (zip)」をダウンロードする。
  5. スケッチ・メニューの Include Library をポイントし、Add .ZIP Library をクリックし、ダウンロードしたファイルを指定する。
  6. Sketchの例として ESP8266_Standalone をダウンロードして WiFi ssid と pass と Blynk auth token を アプリに書かれたものに書き換えます。
  7. ESP8266を接続し、ファームに書き込んだときと同じ状態にし、シリアルモニタを開いて「マイコンボードに書き込む」をクリック….しても動かんぞ。

なんか苦労してます。

新しく技適マークのついたモジュール買うつもりだからこれはここで一旦諦めます。


Blynk から ESP8266 使う… はコメントを受け付けていませんESP8266

ESP8266 ファームウェアの書き換え

  • 11月
  • 3

ESP8266 のファームのバージョンを確認してみる。
AT+GMR
AT version:0.21.0.0
SDK version:0.9.5
OK

SDK リリースのアナウンスを確認する。
Ver.1.4.0 が最新らしい。

  • Click to Download
  • [Patch] esp_iot_sdk_v1.4.1_15_10_22
  • AT_v0.50 bin files

これらをダウンロードしろとなっているのでダウンロードする。
展開して知ったが、AT_v0.50 bin files は Click to Download の先でダウンロードした物に含まれるのでいらない。
さらに V1.4.1 のファームは V1.4.0 と同じなのでやはりいらない。

書き換えツールは…「Flash Download Tool」のトピックがあるので Python じゃない方の「Flash Download Tool」をダウンロードし、展開する。

ESP_DOWNLOAD_TOOL_V2.4.exe があったのでとりあえず実行!
FLASH SIZE? SPI SPEED?
知らんぞ。

ん~、確か、AT+RST するとなんか情報いっぱいでたな….と試しに
AT+RST
OK
ets Jan 8 2013,rst cause:4, boot mode:(3,7)
wdt reset
load 0x40100000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf
ho 0 tail 12 room 4
load 0x3ffe8314, len 288, room 12
tail 4
chksum 0xcf
csum 0xcf
2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size : 4Mbit
jump to run user1
sdC
Ai-Thinker Technology Co. Ltd.
ready

あった!
あれ?ツールのダイアログに「SpiAutoSel」ってチェックボックスがある。これチェックすると勝手に設定してくれそう。
それでいいや。

ファイルは何をどう指定すれば…atディレクトリの下の readme.txt に情報があった。
4Mbit だと NON-BOOT MODE しか選択できないのか。
download
eagle.flash.bin 0x00000
eagle.irom0text.bin 0x40000
blank.bin 0x3e000 & 0x7e000 (Flash size 4Mbit)
esp_init_data_default.bin (optional) 0x7c000 (Flash size 4Mbit)

らしい。
SnapCrab_ESP FLASH DOWNLOAD TOOL V23_2015-11-3_10-35-29_No-00

このまま START を押しても失敗する。どれかを GND にプルダウンする必要があるらしい。

IMG_0653f
こんな感じで GND の接続先を追加する。

STARTを押して Progress bar が右端まで行くのをまつと….
SnapCrab_ESP FLASH DOWNLOAD TOOL V23_2015-11-3_10-59-54_No-00
成功した!
AT+GMR
AT version:0.50.0.0(Sep 18 2015 20:55:38)
SDK version:1.4.0
compile time:Sep 18 2015 21:32:07
OK

Wifi に接続してみます。(行頭が “> ” の行が実際の入力行です。”–“や”//”や”()”で囲まれた行は説明なので実際には入力しません。
// WIFI モードをステーション・モードに設定する。
> AT+CWMODE=1
OK
------------------------
// 利用可能なアクセスポイントを探す。
> AT+CWLAP
+CWLAP:(4,"60..........",-93,"00:0f:0f:04:0e:0d",1,-14,0)
+CWLAP:(4,"9C..........",-91,"0c:06:06:07:09:08",1,-12,0)
+CWLAP:(2,"FD..........",-48,"00:0d:0b:01:07:01",11,-11,0)
OK
------------------------
// 接続情報を取得する。
> AT+CIPSTATUS
STATUS:5
OK
(説明書に記載のないコードが返ってきました。)
------------------------
// DHCP モードを Enable セットします。
> AT+CWDHCP=1,0
OK
------------------------
// SSID とパスワードを指定して自宅のアクセルポイントに接続してみます。
> AT+CWJAP="FD..........","c5.........."
WIFI CONNECTED
+CWJAP:1
FAIL
WIFI DISCONNECT
(一度繋がるけどすぐ切断されました。)
------------------------
// DHCP を Disable に設定します。
> AT+CWDHCP=1,1
OK
------------------------
// 再度自宅のアクセスポイントに接続してみます。
> AT+CWJAP="FD..........","c5.........."
WIFI CONNECTED
WIFI GOT IP
OK
(接続できたし IP も取得したようです。)
------------------------
//接続しているアクセスポイントを確認します。
> AT+CWJAP?
+CWJAP:"FD..........","00:0d:0b:01:07:01",11,-53
OK
(自宅のアクセスポイントに接続していました。)
------------------------
// 取得した IP アドレスを表示します。
> AT+CIPSTA?
+CIPSTA:ip:"192.168.1.12"
+CIPSTA:gateway:"192.168.1.1"
+CIPSTA:netmask:"255.255.255.0"
OK
(確かに自宅のローカルIPが振られています。)
------------------------
// 接続ステータスを確認します。
> AT+CIPSTATUS
STATUS:2
OK
(Got IP が返ってきました。)

DHCP 設定の Enable / Disable の設定が説明書の記載されているものと逆だったりしましたが接続できて IP アドレスの取得もできました。


ESP8266 ファームウェアの書き換え はコメントを受け付けていませんESP8266, YS-CH341T

YS-CH341T から ESP8266 に繋いでみた

  • 11月
  • 1

YS-CH341T から ESP8266 に接続する。

YS-CH341T の設定は UART、 USB供電 3.3V

結線は、
RXI – TXD
TX0 – RXD
GND – GND
VCC – VCC, CH_PD

IMG_0653

Tera Term を立ち上げて、Setup の Serial Port で Baud rate:115200、Data:8 bit、Stop:1 bit に設定。
Setup の Terminal で Receive:CR、Transmit:CR+LF に設定

接続し、
AT+RST
で返事が届く。接続に成功しました。


YS-CH341T から ESP8266 に繋いでみた はコメントを受け付けていませんESP8266, YS-CH341T, お買い物, コンピュータ

PC から I2C とか UART したくて YS-CH341T 買ってみた。

  • 10月
  • 29

EMS8266 へ接続するのに、RapberryPi からではなく PC から接続したかったので、外部電源なしで 3.3V が供給できて I2C が使えそうなドングルを eBay で探した。

値段はあまり変わらないけど、SPI/I2C/UART/ISP へ変換できる「YSUMA01-341A」と、I2C/UART へ変換できる「YS-CH341T」が見つかった。

機能シンプルでいいやと「YS-CH341T」を選んで購入。10月21日購入1,114円、翌22日発送されて27日到着しました。結構早かった。

IMG_20151029_121714

備忘録としての情報を少し….

I2C

緑のジャンパーを USB コネクタに寄せると I2C

逆側だと UART

逆側だと UART(パターンに書いてあるけど。)

赤のジャンパーは USB コネクタを奥に見て、左から REGO, V3, V3, VCC, VBUS, REGI。

USB 供電の 3.3V

USB 供電の 3.3V


USB 供電の 5V

USB 供電の 5V


外部供電の 3.3V

外部供電の 3.3V


外部供電の 5V

外部供電の 5V

接続ターミナルは
RXI TX0 GND VCC SDA SCL

Windows7 に刺したらドライバが見つからないっていう。
とりあえずググるも、簡単に情報が見つからない….

ちょっと違うけど
USBシリアル変換ケーブルドライバ(CH341)が自動でインストールされないときの対処法』を頼ることにする。

紹介先の Driver Scape には Download ボタンが3つ。
一番上は Driver Toolkit なのでドライバー本体ではないので上から2番目の Download ボタンを選んでダウンロードする。

以下はドライバーのインストール手順。ちょっと面倒だったので備忘録として丁寧に説明します。

YS-CH341T を PC に刺すとデバイスマネージャの表示は
ch341a1
のようになるので「不明なデバイス」を選んで右クリック。
ch341a2
プロパティを選ぶ。
ch341a3
ドライバーの更新を押す。
ch341a4
自動検索しても見つからないので手動で検索して…を選ぶ。
ch341a5
ここでダウンロードしたドライバーを指定してもないって言われるので「デバイスドライバーから選択」を選ぶ。
ch341a6
「ポート (COM とLPT) 」を選んで「次へ」。
ch341a7
ここで「ディスク使用」を押す。
ch341a9
ここでダウンロードしたドライバー書庫を解凍したディレクトリを指定して「OK」を押す。
ch341a8
どれを選んでいいのか迷ったけど根拠なく「CH341A」でいいと信じて「CH341A」を選んで次へを押す。
ch341aa
なんか心配してくれるけど気にせず「はい」を選択する。
ch341ad
インストールできた!
閉じると….ch341ab
正常に動作してるしてる!
ch341ac
COM ポートは 3 番らしい。

ちなみに…USB 別のところに刺すと再度ドライバーのインストールが必要。
手順はほぼ一緒だけど、ディスク使用を選んだ ダイアログの製造元に「wch.cn」が追加されてるのでそれでインストールすることができるからファイルはいらないけど。
でも決まったところに刺せばいいか。

あとは実際に繋ぐだけ。


PC から I2C とか UART したくて YS-CH341T 買ってみた。 はコメントを受け付けていませんYS-CH341T, お買い物, コンピュータ

プーリーとプーリーフェイス交換

  • 8月
  • 8

走行距離は 35,768 km

ちょっと前にウエイトローラー交換したんだけど、効果は薄く、さらにパワーが無くなってきた。

なのでプーリーを交換することにしました。前回から1年持ってないことになります。

今回は「横綱ハイスピードプーリーキット アドレスV100」を選択、ベルトも減ってるかと思い「NTB A6-18-690S Vベルト」も一緒に購入。

今回2度目の作業だし…写真撮っても前回と同じ写真になるし…と今回はほとんど写真を撮っていません。

で、作業に入るとプーリーフェイスが外れない。

途中作業を止めて、youtube の動画で確認すると逆ネジのナットを外すと簡単に外れている。ラスペネ吹いても外れない。
時間切れてで作業を中止したのは先週のこと。

プーリーフェイスを外すために、プレート式フライホイールプーラーが使えそうと少しして気付きました。長さ 40mm の 4mm のキャップボルトを購入して今週末を迎えました。
また、交換しようかどうしようか迷っていたプーリーフェイスも購入。プレート式フライホイールプーラーで外す際に壊れたら暫くのれないし、一度も交換していないし。

プーリーフェイスはやっぱり簡単に外れないので予定通り、プレート式フライホイールプーラーを使用。簡単に外れてくれました。
ネジ径に対して溝幅が広いので 4mm のキャップボルトに対して 5mmナット、6mm なっととつけて使いました。

外したプーリーフェイスは鋳物なのかな。細かい穴がいくつもあるし、途中で角度が変わっているので交換して正解だったと思います。

「横綱ハイスピードプーリーキット アドレスV100」にはクラッチ用のスプリングが付いているのでそれも交換。外して交換してそれをユニットにはめる方が簡単でした。

「横綱ハイスピードプーリーキット アドレスV100」のプーリーって裏蓋ないんですがいいの?ねじ穴もないし。

あとアドレスじゃないけど、嫁のムーブの左前ドアの割れたアウターハンドルを交換しました。


プーリーとプーリーフェイス交換 はコメントを受け付けていませんV100, お買い物, バイク, 工作・修理

カヤック用に時計購入

  • 7月
  • 17

前回カヤック用に時計購入欲しいけど…と eBay で安物買いした中華製腕時計は3気圧防水だったはずなのに、使用開始初日に
wpid-img_20150627_131313.jpg
こんな感じで即日使用不可能に。

もう少しお金払ってまともな物買うかと考えてヤフオクで即決 2,000円、込み込みだと 2,200円で落札したのがBaby-G でソーラー電波のこれ。
wpid-img_20150719_090021.jpg即決2,000円とお安い理由は明るい場所では表示するけど、暗所では消えちゃうとのこと。

ひょっとしたらしっかり充電したら動くんじゃない?もしダメなら電池交換すればいいと思っての落札。

届いてしっかり日に当ててみたら…暗所で消えちゃう。あっ、やっぱ電池交換しなきゃダメだ。

裏蓋に書かれた型番を見ると BGT-2500 だって。
「BGT-2500 電池交換」でググると『カシオ腕時計(CASIO)Baby-G/2832/BG1-2500電波デジタル電池交換』が見つかる。電池の型番が「CTL1616」であること、電池交換の手順も確認できた。

電池の CTL1616 は….Amazon とヨドバシにはない。eBay と ヤフオクに見つかった。ヤフオクの方が安い。

ということでヤフオクで入札。即決 1,692円、込み込み 1,872円で手に入った。

ということで早速交換。

wpid-img_20150719_090423.jpg手順は上述のページの通りネジ4本を外してパッキンをどかす。4本のうちネジ2本が馬鹿になってる。これはこれで直さないと。

wpid-img_20150719_091333.jpgシールには電池交換した際のリセットのしかたがちっさい字で書かれている。

wpid-img_20150719_090608.jpg片側のつめを外して電池の交換。

wpid-img_20150719_090142.jpg交換完了。電波受信するし機能的には問題ない感じ。

結局 4,072円で高いか安いかよくわかんなくなったけど電池新品だし、細かいこと考えるのやめよう。

っていうか、自分用に電池交換が必要な Junk 品でいいから 一つ欲しくなったなぁ…


カヤック用に時計購入 はコメントを受け付けていませんお買い物, 工作・修理

静水ループ飛べてネックシール直したけどオーバースラスター割れた

  • 7月
  • 11

この週末は座架依橋下流のプールへ。

長袖ドライトップのネックリースは接着中で、寒かったらどうしようと思ったけど暑かったので半袖で漕げました。ラッキー!

バックデッキロールは相変わらず上がらない。
スターンステーションは姿勢に入る確率があがったのかな。でも止まってられずにゆっくり倒れる。

チャレンジ自体あまりしてないけど、静水ループ、再開後やっと飛べました。

6/29に頼んで7/8に届いたネックシールの交換は済みました。
wpid-img_20150712_054842.jpg

接着剤、どうせ自分でやるなら何か新しいこと試さないとと思い、一般的なアクアシールや、同じウレタン系でセメダインから販売されてて少し安いUT110ではなく、今回はシリコーンゴム系のスーパーX(無印)使ってみました。
元々は一般的な接着剤で着かないとされるシリコーンゴムのネックシールを使おうと思って買った接着剤ですけど。

(無印)としてるのは硬化時間が短めな X2 でも、ゴールドでも、ハイパワーワイドでもく無印のスーパーXという意味です。治具があるので硬化にいくら時間がかかろうがほっておけばいいので、作業時間がゆっくりとれる無印のスーパーXが向いていると考えたため。

(UT110 はホームセンターでもっと安く買えます。)

あと、オーバースラスター割れた。
wpid-img_20150713_064820.jpg

また直すものができた。


静水ループ飛べてネックシール直したけどオーバースラスター割れた はコメントを受け付けていませんカヤック, 工作・修理
© 2007 暇つぶしのエントロピー. Blog theme by blogstheme.com, debt consolidation.