104701
ワンチップマイコンでGO!
[トップに戻る] [アルバム] [留意事項] [ワード検索] [過去ログ] [管理用]
おなまえ
Eメール
タイトル
コメント
参照URL
添付File
暗証キー (英数字で8文字以内)
投稿キー (投稿時 投稿キー を入力してください)
文字色
・画像は管理者が許可するまで「COMING SOON」のアイコンが表示されます。

ADCライブラリ 投稿者:たぐっさん 投稿日:2009/06/21(Sun) 15:19 No.1150   
初めまして。よろしくお願いします。
今、mikrobasicというコンパイラを用いてAD変換をするプログラムを書いているのですが、Adc_read関数の使い方に困っています。この関数って使う際に自分でADCONとかの設定をしないとだめなんでしょうか?チャンネルは引数から指定できるのでそこはいじらなくてもいいと思ったのですが、クロックの設定などは自分でしなければならないのでしょうか?
どなたか知っている方いましたらご教授お願いします。

Re: ADCライブラリ - ioio 2009/06/21(Sun) 20:55 No.1152
こんばんは。

HelpのAdc_Readにあるサンプルをコンパイルし、
生成されたアセンブリリストを見ると、
_adc_read:ルーチンでADCON0とADCON1を操作して、
クロックにFRCを選択、出力の右詰を設定。
AD変換開始、変換終了待ち、AD値取得、AD変換停止。
を実行している様に思えます。
もしかしたらサンプルコードのADCON1 = $80の記述は不要かもしれません。
PICのニーモニックが不得手で、読み違っていたらごめんなさい。

サンプルコード:
program Adc_Test
dim temp_res as word

main:
ADCON1 = $80 ' Configure analog inputs and Vref
TRISA = $FF ' PORTA is input
TRISB = $3F ' Pins RB7 and RB6 are output
TRISD = $0 ' PORTD is output

while TRUE
temp_res = Adc_Read(2)
PORTD = temp_res ' Send lower 8 bits to PORTD
PORTB = word(temp_res >> 2) ' Send 2 most significant bits to PORTB
wend
end.


Re: ADCライブラリ - ロックヒル 2009/06/21(Sun) 23:49 No.1153
たぐっさんさん? はじめまして。

ioioさん いつもありがとうございます m(__)m


Re: ADCライブラリ - たぐっさん 2009/06/24(Wed) 18:16 No.1161
ioioさんありがとうございます。
今PIC16F887を使っていて、今までの16F87x系とADCONの仕様が変わってしまっているみたいなのでこちらから何かする必要があるのかと思っていましたが、勝手にADCON0とADCON1を操作してくれるのならADCONの設定をいれずにプログラムを作ってやってみようと思います。


Re: ADCライブラリ - たぐっさん 2009/06/24(Wed) 20:10 No.1162
ちょっとやってみたのですが、うまくいかないようです。16F887だから駄目なのでしょうか?私もコンパイルして出来たasmを開けて中を読んでみたのですが、_adc_readルーチンの所で16F887のデータシートからしておかしい所が数か所あるように思いました。まだアセンブラ言語はなれてないので確実とは言えませんが(汗。今度は自分でAD変換サブルーチンを作ってやってみようと思います。

Re: ADCライブラリ - ioio 2009/06/24(Wed) 21:24 No.1164 ホームページ
たぐっさんさん。こんばんは。

こちらの環境は
mikroBasic V5.02
コンパイルしたデバイスはPIC18F452です。
V5.02にはPIC16F887が登録されていないため、
折を見てバージョンアップしたいと思います。

>今度は自分でAD変換サブルーチンを作ってやってみようと思います。

がんばって下さい。朗報を待っています。


Re: ADCライブラリ - ioio 2009/06/25(Thu) 17:34 No.1166 ホームページ
こんにちは。

1) mikroBasic Pro V2.15をインストールしました。
2) ADC_TESTプロジェクトをPIC16F887で生成。
3) HelpのADC_Read()のサンプルをコピーし
EBDIS_bitとCMCONの行をコメントアウト。
コンパイルエラーがなくなります。
4) ANSEL = ANSEL or 0x04の行を追加。
PIC16F887のデータシートの
EXAMPLE 9-1: A/D CONVERSIONを参照しました。
5) コンパイル。
6) シミュレーションデバッグ。
メニューの[Run]→[Start Debugger]→[Step Out]をクリック。
Watich Value windowを観察しました、

ADCON0、ADCON1は_adc_readルーチン内で設定されます。
デバッガーはADCCON0のGO_bitを自動的にリセットしない為、
プログラムはADCCON0のGO_bit=0待ちでループします。
GO_bitのリセットはWatich Valueウインドウで行います。
1. ADRESLに任意の1バイトデータを入力。
2. GO_bit=0を入力。ADCON0のGO/-DONEビットのこと。
2,3回入力するとデバッガーが認識します。
3. PORTBの値が1.で入力したデータと同じ値になります。

画像は左から
1) [Run]→[Start Debugger]直後の各値。
2) [Step Out]で連続実行、GO_bit=0待ちでループ中。
3) ADRESLにデータを入力し、Go_bit=0を数回入力した後。


プログラムコード:
program ADC_TEST
dim adc_rd as word

main:
'EBDIS_bit = 1 ' set External Bus Disable bit
'CMCON = CMCON or 0x07 ' turn off comparators
'ADCON1 = ADCON1 or 0x80 ' Set AN2 channel pin as analog

TRISA2_bit = 1 ' input
TRISB = 0x00 ' Set PORTB as output
TRISC = 0x00 ' Set PORTC as output

ANSEL = ANSEL or 0x04 ' RA2 = analog

while (TRUE)
adc_rd = ADC_Read(2) ' get ADC value from 2nd channel
PORTB = adc_rd ' display adc_rd[7..0]
PORTC = Hi(adc_rd) ' display adc_rd[9..8]
wend
end.



ギアのセンサ 投稿者:リン 投稿日:2009/05/08(Fri) 19:57 No.1022   
秋月に、磁力でギア溝を読むセンサが前からありちょっと気になってます。

センサ出力電圧が中途はんぱで少し面倒そうですが、
ギアの歯数を読めそうなので、機械関係には何かと使えそうに思います。

ホール素子でも同様のことはできそうですが、
回転数計のセンサにはこれでなくてもいし、
ギア付き軸の回転角を知るにはなんか正確でないし、
使えそうで目的が思いつかないです。。。

何か、いい用途やアイデア、すでに試しておられる方いましたら 何かご意見お願いできたらと思います。

Re: ギアのセンサ - ロックヒル 2009/05/09(Sat) 00:41 No.1024
>秋月に、磁力でギア溝を読むセンサが前からありちょっと気になってます。

こんな物もあったんですか、知りませんでした。
機械にはギヤが付き物なんで何かできるかな。



Re: ギアのセンサ - みにま 2009/05/09(Sat) 12:43 No.1027
送りねじのネジ山も数えることができるんですよね。
自作DROとか?


Re: ギアのセンサ - ノンノ 2009/05/09(Sat) 15:17 No.1028
ギアセンサの応用はジェットエンジンなどに使えないかと調べたんですが、
最高速ではダメのようでした。

この原理は磁束抵抗素子(ホール素子)に小さなマグネットを組にしたもので、磁束はマグネットとギアを通ってホールセンサがひらい
自動的に感度や温度の補正がされていて、DROとなると中間分解能が難しいかもしれません。


Re: ギアのセンサ - みにま 2009/05/10(Sun) 03:06 No.1032
> DROとなると中間分解能が難しいかもしれません。

センサ1個:ネジの山谷のカウント⇒ネジリードが1mmなら1mmの分解能
(送りハンドルを何回転させたかのメモ代わりにはなる?)

センサ10個:各センサをねじ山からの相対距離を0.1mm間隔に並べると0.1mm分解能

 というのはどうでしょう?


Re: ギアのセンサ - リン 2009/05/10(Sun) 13:46 No.1034
レスありがとうございます。

ノンノさんも興味もってたんですね。
でもやはり実用されてない様子。

みにまさんのアイデアについてですが、
このセンサ、磁力式なので精度ないと思います。
加工の重要な数値には手軽さより、やっぱり同じ作るなら多少手間暇に費用かけてもエンコーダーなど精度あるものが良さそうですね。

精度の悪い回転角度の用途は、歯車の確認に歯数を数えるのが自動ぐらいしか思いつきませんでした。




ガバービューワー 投稿者:puw2 投稿日:2009/04/22(Wed) 10:41 No.966   
AVR ATMEGA628を使用した3軸パルスモーター基板をDynatron製ガバービューワーでチェック
http://www.geocities.jp/puw2/Dynatron.html


Re: ガバービューワー - ロックヒル 2009/04/23(Thu) 01:04 No.969
>ATMEGA628を使用した3軸パルスモーター基板

東芝FET MP4401 4個持ってます (^_^)
ミニミニCNC制作の予定があるので、もし出来たらpuw2さん
設計の基板で動かしたいです。


Re: ガバービューワー - puw2 2009/04/23(Thu) 10:26 No.971
了解です。基板は今月中には出来上がりそうです。
5月からの連休で動作確認出来ればと思ってます。


Re: ガバービューワー - ロックヒル 2009/04/24(Fri) 01:02 No.973
>了解です。

ありがとうございます。(^_^)
puw2さんの後に追試ができれば、と。


インターフェース2009年5月... 投稿者:puw2 投稿日:2009/04/08(Wed) 22:30 No.915   
インターフェース2009年5月号基板
2軸パルスモーター動作確認ソフト
追加テスト中?
参考になれば
http://www.geocities.jp/puw2/index.html


Re: インターフェース2009年... - ロックヒル 2009/04/10(Fri) 00:34 No.920
>インターフェース2009年5月号基板

puw2さん 付録基板情報ありがとうございます。

興味ある方はpuw2さんのサイトへ。


Re: インターフェース2009年... - puw2 2009/04/16(Thu) 00:13 No.945
レジスターのリードライト、ADC読込み、DAC出力、割り込みON/OFFを追加しました。PCのUSBポートからシリアル制御すれば
いろいろな事が出来るようになりました。スキルアップの手助けになれば感謝です。


PWMのテスト 投稿者:ノンノ 投稿日:2009/03/07(Sat) 13:53 No.817   
簡単なテストをしました。
http://jp.youtube.com/watch?v=oI5ip7XNxYY

デジタルノギスの外部端子 投稿者:ながれ星 投稿日:2009/02/27(Fri) 16:02 No.783   
ご無沙汰しています。

中国製と思われる安いデジタルノギスに外部端子があります。ネットで調べると1.5Vロジックの
クロック信号と24ビットのシリアルデーター信号のようです。外部端子はリニアスケールそのまま
の信号なのかLCDに表示される値とはズレがあるようです。LCD表示はリニアスケールの精度誤差を
補正して表示するが、外部端子は補正前のデーターなのでしょうか?
ゼロリセット時はLCD表示通りの相対値が出力されるのでしょうか?

エクセルなどに測定値が読み込めると便利かな、と思っただけです。情報がありましたらお願いします。


Re: デジタルノギスの外部端子 - ioio 2009/02/27(Fri) 17:30 No.784 ホームページ
2通りの出力フォーマットを確認した事があります。

1) バイナリ出力タイプ
0リセット位置からのカウント値が出力されます。
1カウントは1/(512×40)インチです。

2) BCD出力タイプ
LCDと同じ値が6桁のBCDで、さらに+/-の符号が出力されます。

>ゼロリセット時はLCD表示通りの相対値が出力されるのでしょうか?

LCDと等価なバイナリ値またはBCD値が出力されます。

>エクセルなどに...

PCのモニターに表示したことがあります。
http://ioio.at.infoseek.co.jp/AVR/LessonA_07.html
を参照してください。



Re: デジタルノギスの外部端子 - ながれ星 2009/02/27(Fri) 19:22 No.785
ioioさん、情報をありがとうございます。
紹介いただいたのは自分にとって、もの凄い情報です。

自分が最初に購入したのはシンワだったか、勢い良くスライドするとデーターが追従できずにずれてしまいました。落下事故で故障したので2代目はそんな事も無く、電源を切ってスライドさせてもちゃんと表示するのでアブソリュート式のリニアスケールになっているのかと思います。その後、安い中国製と思われる物も入手しました。ノギスのマイコンの仕組みも興味があります。




Re: デジタルノギスの外部端子 - ioio 2009/02/27(Fri) 21:07 No.786 ホームページ
>電源を切ってスライドさせてもちゃんと表示するのでアブソリュート式のリニアスケールになっているのかと思います。

実験に使用したノギスは、LCDはOFFでも内蔵デバイスが動作している為、
外部端子からは絶えず信号が出力されていました。
某通販のユーザーの声に「電池の寿命が短い」というコメント
がありましたが、内蔵デバイスを休止状態にしていない事が
原因かもしれませんね。


Re: デジタルノギスの外部端子 - ながれ星 2009/02/27(Fri) 23:06 No.787
ioioさん、こんばんは。

なるほど、電源offでもカウント動作をしているわけですね。アブソリュート構造はどうなっているのか興味がありましたが
何となく納得です。以前のノギスはすっと動かしただけでも明らかにデーターずれがありました。最近のはいくら速く動かし
ても追従してくるのでデバイスが高速になっているようです。そういえば中国製と思われるのは電源を入れなくてもスライド
すると自動で電源が入ります。シンワは電源SWでないとONにはなりません。

外部端子の信号はバイナリだと1カウントは0.00124mmで、BCD出力の場合はLCD表示値出力の2種類が存在するわけですね。
目立つほどの誤差があればLCD表示なら補正するかも知れません。補正する意味があるかは判りませんが。


Re: デジタルノギスの外部端子 - ながれ星 2009/02/28(Sat) 20:38 No.789
メーカー名記載の無い中国製と思われるデジタルノギスも2本持っていて、文字やローレットネジだけは異なりますが
どう見ても作りは同じです。1本は¥999でした。まだPICも出来なくて、AVRも予定はあるのですが遅々として進みません。
まず外部端子のコネクターからチャレンジしてみます。端子ピッチは1.6mmとして生基板をカッターナイフや彫刻刀で
削ってみるつもりです。ioioさんのようにNCフライスがあると便利でしょうね。基板の銅箔を削る場合はエンドミルの
最小径はどのくらいまで可能でしょう?。0.3mmが可能だとピン間2本はいけますね。3本はどうですか?


Re: デジタルノギスの外部端子 - ioio 2009/02/28(Sat) 21:38 No.790 ホームページ
超鋼のΦ0.3mmのエンドミルが銅箔に接触するやいなや折れてしまい、
現在は超鋼のV字(60度)カッターを基板切削ごとに研磨して使っています。
Φ0.3mmのエンドミルを使いこなすには、
回転精度のよいスピンドルが不可欠と思われます。

V字カッターでは、切込み量を増やすと切削幅が広がる為、
ピン間2本が精一杯です。(基板面の高さ補正を実施して)
ピン間1本で両面基板かジャンパー線にした方が、
基板切削の歩留まりが格段に向上します。

V字カッターの形状については、
http://ioio.at.infoseek.co.jp/CNC/CNC_VCutter.html
を参照して下さい。


Re: デジタルノギスの外部端子 - ながれ星 2009/03/03(Tue) 14:20 No.802
ioioさん、こんにちは。

ioioさんにはとっくに実験、解析、実施済みでした。つまらない質問に、ご親切な回答をありがとうございます。
刃物まで作るんですね。凄い。以前から1mm以下のエンドミルの先端形状はどうなっているのか、またどうやって刃先を
加工するのか疑問でした。0.3mm径だと1枚刃でも0.15mm以下の刃長になり、バリより小さそうで、もう無理な感じです。

ioioさんの刃は1枚刃で強度を持たせ、加工可能な形状で納得ですが、自分には、いまいち立体的なイメージが難しいです。
サンハヤトのポンチ不要がうたい文句の半月キリの先端を改善してフライス加工を可能にした、みたいな感じでしょうか。

考えたらリューター精度も必要ですが加工物が基板では固定も難しそう。銅も粘っこそうだし、接着剤も問題が多そうです。
パターン幅は0.2mmでも電気的に良くても接着が剥がれずに綺麗に加工できるかも不安です。ioioさんのテスト加工の画像を
見ると刃先摩滅が無ければ角の小さなランドも剥がれずに残るようで、問題はioioさんも補正で対応されるようにリューター
精度や剛性もそうですが、基板のたわみや浮きかも知れませんね。孔加工には使えないですが吸引ベットも作られるのかな。

自分は超硬キリなら万能だろうと3.2mmシャンクの0.6mmを、ボール盤も無いのに基板の孔加工に使ったら簡単に折れてしまい
全々駄目でした。結局サンハヤトのミニドリルに普通の0.7mmキリを使います。曲がるくらいが折れずに加工できました。
樹脂には普通のキリではすくい角が鋭角過ぎて食いつきが怖いので、樹脂用刃先のキリを販売してくれるとうれしいです。

超硬キリが悪いわけではないのですがチャックが合いません。市販を探しましたが見つかりません。シャンクが5mmで径3.2固定
チャックなので径さえ合えばアルミのパイプとかナイロンチューブでも良さそうです。作る事も可能と思いますが自分には無理
なので町の業者に依頼も考えています。小キリは小径ほど高価なので再研磨の超硬が安上がりですが、もう沢山折りました。

頻度は少ないですがプリント基板の自作はJW_CADでトレーシングペーパーに印刷して、フォト&エッチングでパターン幅0.2mm、
間隔0.2mmまで可能なので孔径0.6mmコネクターならピン間3本までやりました。ハーフピッチのフラットパッケージ・ランド間に
パターン線を1本通すのも大丈夫でした。しかし露光時間は自然の太陽光で1分前後と適当ですがエッチング時間は微妙です。

反転させて印刷して印刷面と基板面を合わせて紙の厚みによる露光滲みを防ぎ、太陽光で短時間露光します。昔、niftyのfdevice
でお聞きした方法です。ありがとうございました。OHP用紙に印刷も実験しましたが印刷がいまいちで、トレーシングペーパーに
なりました。エッチング処理は地球環境にやさしくないのでioioさんの方法が良いのですがスキルや費用を考えると手が出ません。

外部端子はハーフピッチのユニバーサル・スルーホール基板を45度方向だと1.8mmくらいなので何とかなるだろうとヘッダーピンや
コネクター端子ピンを押し込んで一直線にはんだ付けする方式も検討中です。


Re: デジタルノギスの外部端子 - ioio 2009/03/03(Tue) 17:39 No.805 ホームページ
ながれ星さん、こんばんは。

「円錐状の半月」カッターです。
3箇所に逃げ角をつけています。

切削と穴開け
1)真空吸着テーブルで基板を固定しパターンを切削
2)鉄鋼用ドリル(ハイス)で貫通しない深さまで穴開け
3)基板を裏返して吸着とセロハンテープで固定
4)吸着テーブル直前までドリルで貫通。

ドリルアダプター
小径ドリルを自作アダプターを使用して、
スピンドルのコレット(3mm)に装着します。
ハイスドリルで1000個以上、まだ使えます。基材は紙フェノールです。



Re: デジタルノギスの外部端子 - ながれ星 2009/03/07(Sat) 01:33 No.814
ioioさん、こんばんは。

カッターは60度円錐のDカット半月刃にエンド面切刃を設け、切刃の逃げと
回転による逆刃逃げを設ける、と理解しています。

孔開けは両面からだと抜け側のバリがなくなります。NCならではですね。

NCフライスも小型卓上式でブッシュタイプのガイド方式だと十万くらいからあるようで、
3倍の予算ならリニアブッシュタイプもあります。かなりお安くなってきたので気になっています。
手加工とは比べものにならない精度も出せそうで、加工量が多いほどメリットがありますね。
同然、精度を出すには工夫やメンテも必要と思いますが、それもまた、楽しそうです。
余裕が取れたら考えたいと思います。ありがとうございました。


Auduinoでバイポーラのステッピ... 投稿者:puw2 投稿日:2009/01/05(Mon) 23:51 No.686   
今年もよろしくお願いします。
Auduinoでバイポーラのステッピングモータを廻して見ました。
http://www.geocities.jp/puw2/index.html


Re: Auduinoでバイポーラのステ... - ロックヒル 2009/01/06(Tue) 20:55 No.687 ホームページ
puw2さん いつも話題提供ありがとうございます。
今年もよろしくおねがいします。

>Auduinoでバイポーラのステッピングモータを廻して見ました。

Auduino、日本ではまだまだ馴染み薄ですよね。
puw2さんの紹介リンクでちょっと勉強し少しはわかってきました。
優れ物のようですね。


無題 投稿者:五右衛門 投稿日:2008/12/11(Thu) 21:44 No.675   
こんばんは。
ICD2を使用し、ICSPにてプログラムの書き込みを行いたいのですが、ICD2の電源を基板側の5Vを使用したいと思っています。その際のICD2の消費電流は、どのくらいになるのでしょうか。また、ICD2の5Vの電源には、デカップリングコンデンサは必要でしょうか。
いろいろ調べてみたのですが、有力な情報を得る事ができませんでしたので、すいませんがご教授願います。

ICD2の電源 - SEC 2008/12/12(Fri) 00:07 No.676
こんばんは。
下記のリンクでは不可能と記述があります

http://ww1.microchip.com/downloads/en/devicedoc/51331a_jp.pdf




Re: 無題 - 五右衛門 2008/12/12(Fri) 06:40 No.677
ご回答ありがとうございます。
ICD2は、別に電源を用意しないと動作しないという事で解釈してよろしいでしょうか。


電源立上げシーケンス - SEC 2008/12/12(Fri) 10:50 No.678
おはよう御座います

先ほどのリンクの次の項目に記述があります
ICD2からだと別電源を利用すると 200mAまで供給可能

その電源シーケンスも記述があります
壊さないようにするのも大変ですね
夢中で作業していたら順番間違えそうですが
ICD2の電源が何時も供給していたら間違いないようですね



Re: 無題 - 五右衛門 2008/12/14(Sun) 23:14 No.680
SECさん、ありがとうございました。
いろいろ制約条件があるのですね。間違えないように気を付けます。


[1] [2] [3] [4] [5] [6] [7] [8] [9]

処理 記事No 暗証キー

- Joyful Note -