2007-04-07

PICプログラマーのUSB電源化 

PICプログラマーをノートコンピュータを使ってどこでもつかえるように電源をUSB化して見ました。
以前はPICプログラマー自体を作成しようと考えていましたが、USBtoシリアルケーブルの問題で上手くできませんでした。
今回は市販のPICプログラマーを使い電源のみの改造になります。

フォトライブラリーに記録を残しておきました。

PICプログラマーUSB電源化
詳しくはRight Stuff Wrong Stuffの秋月のPICプログラマーをUSB化する を参照してください。
電源はRight Stuff Wrong Stuffの出来るだけ安価に5Vから13Vを作るの回路をそのまま使用しています。
Posted by Picasa

良く調べていたら参考にしたRight Stuff で販売している5U-KIT(5V系ロジック回路をUSBポートに接続できるようにするキット)を使えば 参考にしたサイトの記事と同じようにUSBに直接接続できそうです。
近いうちにトライしたいですね。

4月11日、秋月でFT232RL USBシリアル変換モジュール を注文しました。
このモジュールのRS232CレベルコンバータICの部分を取り除き取り付けてやろうかと考えています。

2007-03-16

LEDを使った光のビーズ

最近、電子工作に時間がほとんど取れていないので他の方の製作記事を紹介します。

お気に入りでも紹介しているRLCさんのブログでLEDを使った光のビーズ、これは電子工作(特にLED関係)マニアとしてはとても興味ある内容です。
仕組みはLEDを使った光のビーズのしくみで紹介されています。

LEDを使うときに極性を意識せず、電圧も広い範囲で使える便利な回路です。
RLCさんも書かれていましたけど、LEDメーカーがこの回路を組み込んだLEDを出せばいいのにねと思います。

今後、LEDはもっと使いやすいようになっていくのではと思います。

LEDを使った光のビーズ、自分でも作ってみたいですね、それに色々応用ができそう。

2007-02-18

汎用USB-IOのVBA専用DLLのVista対応 WDK

結局、まだ対応ができていません。
ドライバーの切り口から調べ始めると、どんどん深みにはまっている感じです。
DDKのサンプルソースのフォルダー構成が98からXpまではWDM(Windows 98/Me/2000/XPで共通して使えるデバイスドライバを開発するための枠組み。)というくくりになっていたのですが、
VistaからのWDKではWDMというくくりが無くなりいきなりHIDになっていましたね。
同じサンプル(hclient)を探すのに手間取ってしまいました。
今回の参考になりそうなサンプルを確認して見ました。
2000のOS上でDDKの環境でコンパイルテストもOK。
VistaのOS上でWDKの環境でコンパイルテストもOK。

なんかこの辺りを調べると解決策がありそうなので引き続き調査中です。

2007-02-08

汎用USB-IOのVBA専用DLLのVista対応 

Vista用のドライバー開発の知識が必要なのかぁ。
VistaからはDDKではなくWDK(Windows Driver Kit )になるようなのでとりあえずダウンロードしてセットアップしてみました。

サンプルもインストールされたので見ていますが命令が違いますね。

自分の予想では今までの命令を使う前におまじないの命令を実行して権限を与えてるのではと思ったのですがだいぶ違うのでどこをどうしたら良いのか分からない状態です。

いいサンプルが無いか探している所です。

2007-02-06

汎用USB-IOのVBA専用DLLのVista対応 

VBからAPIで呼ぶ場合とVC++から呼ぶ場合で何か違うのでしょうか?
同じ命令なのにVC++で作成したDllでは上手く動きません。
Vistaの正式バージョンでもVBはしっかり動きます。
VB6をサポート対象にしているので
VB6だったらという、何か特殊なことをしているのでしょうか?
やっぱり、何かの権限なんでしょうか。
引き続き調査をします。

2007-02-05

汎用USB-IOのVBA専用DLLのVista対応 その後  

Vistaが発売されてもまだ対応が出来ていません、すみません。
正式バージョンを購入して試しましたが、やっぱりダメですね。

VBのソースとDLLのソースを見比べながら、組みなおしを考えています。

Vistaを触っていますが、標準セットアップ以外のことをしようとすると、分からないことが多いですね。
悪戦苦闘中です。

2007-01-02

あけましておめでとうございます。   

今年もよろしくお願いいたします。

写真は初日の出を撮影したものです。
雲がかかっており、一瞬しか見れませんでした。
でも、雲に光が差してきれいでしたよ。

初詣は地元の氏神さんにお参りした後、宮島にも行ってきました。
その帰りになんと、今年の干支のイノシシにであいました。
これも一瞬の出来事で撮影できていないので画像がありません。(残念)

なんか正月早々縁起のいい元日の出来事でした。 Posted by Picasa

2006-11-29

汎用USB-IOのVBA専用DLLのVista対応 その3 

USBデバイスを直接制御しようとしているのでどうもはねられている感じがします。
でも、VB6.0からは上手く動いているのが納得いきません。

納得いかないのですが、今度VBでDllを作成してみようかと思っています。
正式にリリースされたらVBからも動かなくなる可能性がありそうでちょっと心配。

2006-11-27

汎用USB-IOのVBA専用DLLのVista対応 その2 

現在、Dllを単体のEXEで動作できるようにプログラムを修正してデバッグ中です。

どうも権限か何かでUSBの情報が正常に取得出来ていないようです。
実行ファイルのプロパティで管理者権限で動作させてみたり、色々やっているのですが上手く動いていないようです。

最近のトラブルで多いのはOS自体がセキュリティを強化して、結局今まで動いていたものが動かないという症状です。(これにはまっているのかなぁ)

Windows Live OneCareという物も試用しているので、これも影響しているかもしれません。

時間が無いので、ちょっとあせってきています。
情報が少ないものネックになっています。

2006-11-26

PICライター 作成中!!  

前から作りたいと思って部品だけはそろえていたのですが、他の事でなかなか時間が取れず手をつけていなかったのをやっと取り掛かりました。

RS232Cインタフェースで書き込みが出来るシリアルPICライターです。
シリアルPICライターは電力をシリアルの信号から取っているのでUSBシリアルなどでは書き込みに失敗することもあるそうです、今回のPICライターは外部電源をつけて確実に書き込みが出来るものです。
http://www16.ocn.ne.jp/~kenju/programmerX/progX20.html ここを参照してみてください。

本来なら15V程度のACアダプターを使うのですが、せっかくUSBがあるのでそれから供給するように考えてみました。
USBの電圧は5VなのでロジックICで発信させチャージポンプ方式で4倍の20Vまで昇圧させて使う予定です。
写真の上側がその回路で下側がPICライターの部分です。

これでUSB2口あれば電源無しで(USBシリアルのケーブルは必要、シリアルポートがついていればこれも不要になりUSB1口あれはOK)PICが書き込めます。
それにこれは特別な部品を使っておらず、部品代も2000円以内です。

上手くゆけば画期的だと思うのですが、上手くうごくかな? Posted by Picasa

2006-11-16

汎用USB-IOのVBA専用DLLのVista対応 

WindowsVistaをインストールしたので、早速現在公開しているVBA専用Dllを動作確認しましたが、みごとに動きません。

すべてVBで作成された(APIを呼んでいる本来のサンプル)ものでは正常に動作しています。
タイミングが悪いのではと思っています。

Dllの開発環境のVCもセットしてデバッグを考えています。
Vistaの発売に間に合うように、対応をしないといけませんね。

2006-11-10

Linux(FC6,FC5)で汎用USB-IO(ビット操作)サンプル 

汎用USB-IOの問い合わせで一番多いのがビット操作の仕方です。
今回のサンプルはコマンドのオプションパラメータを与えることにより、任意のビットをON/OFFできるようにしてみました。
状態の表示もビット単位で可能です。

環境作成やコンパイルの仕方はLinux(FC5)で汎用USB-IOを使うための環境を参照してください。
本拠地のUSB-IOをFC5(Linux)で使用するにも詳しく書いてあります。

使い方は管理者権限がある状態で(rootユーザーか、SUで権限を与えてください)
./usbio と入力すれば実行されます。
この時に表示されるUsage:を参照してください。

例)
./usbio -h -p0 -b1 でPort0のビット1をHi(1)にします。
実行すると Port01 : h のように現在の状態を表示します。


ヘッダーファイル msubiobase.h の内容です。
内容はいっしょですが、テクノキット用のプロダクトIDが違っていましたので修正しています。

musbiobase.h



次にサンプルソースです、これは簡単な出力と入力を行っています。
usbio.c

2006-10-23

オートライト作成中 

だいぶいい感じになってきたので微調整中です。

主な問題点は以下の通りでした。

・プログラムにBUGがあった。
 これでかなり混乱してしまった、
 判断文のところをきれいに消して組みなおすと
 結構いい感じで動作していました。
・組みなおしをする時にプロジェクトを名前を付けて保存すると
 色んな設定が初期の状態になり、
 CONFIGの設定が変わり、動作自体が出来なくなった。
 作り直す時にコピーしてから作業すべきでした。
・動作タイミングの問題
 前回の書き込みでは2個センサーをつけてと
 思っていましたが、45度の角度をつけて1つのセンサーに
 することにしました。
 これで、車が向いている方向の明るさで判断できるように
 なり、自分的には満足しています。

以上ですが、まだまだ問題が出てきそうです。

納得できる物が出来たらソース、回路図を作成したいと思います。

2006-10-20

オートライトは奥が深い!! 

MOVEにオートライトをつけよう!ということで試作品を作っているところです。

実際に試作品を作ってライトの替わりにLEDで試してみたのですが、色々問題が発生です。
PIC(12F675)を使用したので調整はプログラムの定数になっていますが、意外と調整が難しい。
部屋の明かりと運転をしている時の感覚ではだいぶ違うようです。

PICで作るのでスモールライトとヘッドライトを違うタイミングで点くようにしてみました。
このタイミングが難しい!! オートライトの一番の問題は点いてほしい時に点いて、消えてほしい時に消えるというあたりまえの機能が難しいのです。

実際に試すと分かるのですが、昼間にトンネルに入ると当然、自動で点くのですが、トンネル内の照明が間隔を置いてつけてあるので反応を良くすると常にパッシングをしている状態になります。
反応を鈍くするとトンネルに入って少し時間が経たないと点かない、トンネルから出てもすぐに消えない、となってしまいます。
点く明るさと消える明るさを変えて一度点いたらちょっとの変化では消えないようにしていますが、これも差をつけすぎると点かない、消えない物になってしまいます。

曇りの時に森林を通ると木の陰に反応してしまいます。
こちらはスモールがパッシング状態!
ちょっとしたガードをくぐってもパッシング状態(これは良く見かけますよね) メーカー純正でもある程度はなるのですが、なんとかならないかと思っています。

今回はPICのメモリーがかなりあまっているので、オートライトごときなのですが複雑なロジックを組んでみようかと思っています。
センサーを複数つけるといいかも、現在はセンサーを上に向けているのですが、センサーを前方に向けた物をつけて複合的に判断させてはどうかと思っています。

2006-10-18

いまどきの車 

新型MOVEが出たので見に行って来ました。(結局、注文してしまいました)

標準装備も充実しているのですが、
オプションも時代にあわせて色々ありました。
LEDのルームランプ、フットライト、室内照明、キーレスエントリ連動ミラー格納機能、オートライトなど、
でもオプションをつけてしまうと電子工作ネタがなくなってしまうのでつけませんでした。

現在、手始めにオートライトを作成しています。
配線図はもらえるようにお願いしたので安心です。

でも、納車は12月中旬(CVTがついているXLimittedにしたため)なので、取り合えず今乗っている古いMOVEでテストになりそうです。

試作品ができたらまたUPします。

2006-10-12

PIC:電子メトロノーム第2弾 改造中 

PIC:電子メトロノーム第2弾の電源を乾電池3本ので使っていたのですが、
SLEEP機能も使って省電力になっているはずなので、太陽電池で動作させようと考えました。

そこでジャンクセンターで購入したソーラーラジオからNiCd電池と太陽電池を取り出しそのまま取り付けました。

上手く出来たと思ったのですが、1日充電してSLEEP状態で放置しておくと1日でほとんど残っていません。
おかしい!!、どうも充電が上手く出来ていないのではと思います。
電池も完全放電しているのでまずいのかも、充電器で充電して様子を見ているところです。
SLEEP状態で0.2mA、動作中で0.7mAから数mA(ピッとなって瞬間的にLEDがつくので計れていません)なのでかなり電池ももつはずなのです。

回路設計上一度OFFになりONするとONしっぱなしになります。
リセットがかからず、正常にプログラムが動かないとLEDがついたままになります。
回路の見直しも必要かもしれません。

ボタン1つで電源をON/OFFしたかったのですが、結構難しいのですね。
SLEEPもPICをはじめてから今回やっとまともに動作しています。

まだまだ勉強中です、長い目で見てください。

回路図は見直しをしているのでまだUPできていません、すみません。

2006-10-02

PIC:電子メトロノーム第2弾完成 

LCD有りバージョンを先日作成しましたがPICのメモリーが足らず、機能追加が出来なかったのでLCD無しにして作り直しました。
スピードの設定をLCDの表示を見ながらUP/DOWNのボタンで設定する方式がLCD有りバージョンだったのですが、ロータリーSW?、数字を合わせることによりBCDコードでON/OFFされるものを使い設定値を読取る方式にしました。
LCD表示の処理ルーチンで結構メモリーを食われていたようで、LCDを使わないバージョンはメモリーを半分しか使用していません。
SLEEPの機能、n拍子毎に音の高さを変える機能、3LED対応も追加しています。

回路図は作成中で出来たらまた更新します。

ソースはかなり汚いですが以下の通りです。
--------------------


--------------------
Posted by Picasa

2006-09-28

PIC:メトロノームを作成しました 

久しぶりに電子工作らしいことをしました。



電子メトロノームをPICで作成です。
PICは16F84Aを使用して、PICの開発にはMikroBASICを使いました。
UP/DOWNのSWでスピードを変更できてスピードはLCDに表示させるようにしました。
スピードに合わせてLEDの点滅と圧電素子で音を鳴らしてみました。
LCDのルーチンが結構メモリを食ってしまうらしく、もうほとんどあまりがありません。
本当はまだ色々機能をつけたかったのですが 無理のようです。

LCDを使わないように工夫をして機能UPを考えています。
電子メトロノーム第2弾考案中!!


とりあえず今回の回路図は MTRO.gif 。

ソース は以下の通りです。
-----------------------------------------

-----------------------------------------

2006-09-16

汎用USB-IOをブレッドボードで試す! 

汎用USB-IOのテストが手軽に出来るようにブレッドボードに接続できるように考えてみました。
上の写真はテクノキットの汎用USB-IO用です。
テクノキットのHPのUSB-IO関連基盤で紹介されているコネクタBを直接取り付けています。
足が短いので、足を押し付けて確実に差し込めるようにしています。


下の写真はKm2Netの汎用USB-IO用です。
こちらは2列のコネクターがついているので1列になるようにしています。
そのままの順番ではピンの順番が123456・・・とならず、
214365・・・ となり使いにくいので正し順番になるように2本ごとにクロスさせています。
写真をクリックすると少し大きくなるので確認してみてください。

このブレッドボードを使って説明をして行きたいと思っています。 Posted by Picasa

2006-09-12

本:手作りUSB機器 

本拠地で公開している 汎用USB-IOをVB、AB、Excelなどで簡単にコントロールできるようにするDll(vbausbio.dll)を使った記事が載っている本です。

アマゾンの書評をみると結構きびしいことがかかれてありました。
-- アマゾンの書評から抜粋 --
本の中で何回もvbausbio.dllというネットにある個人が作ったファイルから関数を引き出して使います。その度に筆者はその関数を説明してくれるのですが、他にどういった関数があるのだとか教えてくれない。つまりこの本だけだと応用しようにもできないのです。
-----------------------------
自分のHPでも解説を入れないといけませんね。
サンプルも何本かあるのですが、記事を付け足しで更新しているので読みづらくなっていると思います。
ちょっと、見直しをして更新をしたいと思います。

また
-- アマゾンの書評から抜粋 --
無理にオリジナルを作らずに、たとえばUSB-IO販売会社のひとつであるテクノキットの出しているボードについて解説、応用などにしてもらったほうが親切だったと思う。
-----------------------------
こんな書評もありました。
テクノキットさんから汎用USB-IO関係の新製品も出る予定なので、取り寄せて試用レポートを書けるといいですね、こちらもこれからのHP更新ねたにしたいと思っています。