Sim's blog

電子工作はじめてみました

PICkit2の降圧回路

2009-11-30 22:34:58 | 電子工作
PICkit2のレベル変換回路(2)の続きになります。

PICkit2はユーザーズガイドに全回路図が載っています。アナログ回路なので動作がよく分からない所をLTspiceでシミュレーションして分かったつもりになろうとしてます。

前回は、最終段の入出力部のレベル変換についてでした。今回は、降圧回路をシミュレートしてみます。PICkit2は、PICkit2からターゲットの基板に電力を供給することができます。供給する電圧はソフト的に制御できます(3.3Vとか5Vとか)。

関連する回路を抜書きしてみました。

PICkit2はオペアンプとしてMCP6001Uを使っていますが、LTspiceにはモデルがなかったので、適当なレールツーレール入出力オペアンプを使っています。抵抗やコンデンサの番号はPICkit2のユーザーズガイドに合わせてあります。PMOSのFETもいいかげんに選んでいます(本物はIRL ML6402)。

RC4というPIC18F2550の出力端子からPWM信号が出力されます。R4とC8のローパスフィルターで平均化(平滑化?)されて、Vrefとしてオペアンプの-入力に入力されます。最終的な出力電圧+V_TGTは、このVrefの2倍の電圧になります。
オペアンプの回路構成は反転増幅でも非反転増幅でもない、ブートストラップ回路と似たものになっています。トラ技10月号付録の「パワー・マネージメントIC活用ハンドブック」p.15によると、代表的なLDOの構成法の一つみたいです。
オペアンプはVrefの2倍の電圧を出力して、そのあとにPMOSのボルテージフォロワーがつながったような回路になっています。

デューティ比が0.3(ON:OFF=3:10)のときのシミュレーション結果です。Vrefの電圧(紫)の2倍の電圧が出力されています。

Vrefは1.65Vくらいで、+V_TGTは3.3Vくらいです。

Vrefを1.5Vから2.5Vまで0.1Vきざみで動かしてみました。

+V_TGTはちょうどVrefの2倍になっています。

PICkit2では、+V_TGTは4.7kΩを介してRA1という入力端子(たぶんA/D)につながっていて、フィードバック制御でPWMのデューティ比を変えることで、色々な電圧の電源になれるようになっています。

オペアンプの入力は0~2.5V、出力は0~5Vです。出力が5Vまでフルスイングしているので、少なくともレールツーレール出力のオペアンプを使う必要があります。

5Vしか使わないとすると、このあたりの回路は全部いらなくなります。

PICkit2の主なモジュールは以下の4つになります。
(1) 降圧回路、USBの5Vから+V_TGTを作る(フィードバック制御あり)
(2) 昇圧回路、+V_TGTからVPP用の電圧を作る(フィードバック制御あり)
(3) VDD_TGT入出力切り替え回路、PICkit2から給電するか、ターゲットから給電するかを切り替える
(4) レベル変換、ICSPCLKとICSPDATの電圧を0~VDD_TGT(V)入出力にする

今回の回路は、前回のレベル変換回路と違って、PICkit3でも引き継がれています。

なんとなく分かったような気になれたのでよしとします。

マルツのヘッドセットルーペ

2009-11-30 21:17:14 | 電子工作
マルツでヘッドセットルーペという頭につける虫めがねが売られていました。680円だったので試しに一つ購入してみました。




中身

うしろの方はマジックテープになっていて、頭のサイズに合わせて調節できるようになっています。


レンズ部分は角度調整できます。箱には2.5倍と書いてあります。
微妙な感じもしますが、値段相応の価値はありそうな気もします。

千石のジャンク袋

2009-11-29 23:21:31 | 電子工作
千石の玄関先に300円のジャンク袋が売ってました。事業仕分けです。

袋に入った状態


袋から出してみました


モーメンタリスイッチ関連。表面実装用っぽいのもありました。


スライドスイッチ


(たぶん)ヒューズ。なぜかマジックで色が描かれてます。


タンタルコンデンサ。

0.22uF(青)、0.68uF(青)、3.3uF(茶)の3種類がありました。耐圧は35Vでした。

フィルムコンデンサ、セラミックコンデンサ


その他

チップコンデンサ、チップダイオード、インダクタ(223と181)。奥に見えているのはヒューズを入れるプラスチックの箱です。

スイッチとタンタルコンデンサがいっぱい入っていました。
2Fには、他の種類のジャンク袋(半導体袋)がありました。

FMラジオキット FK1を作ってみました

2009-11-29 21:33:34 | 電子工作
MTM04で買ってきたFMラジオキットFK1を作ってみました。
作り方や機能はゆきの研究室さんのこちらにあります。

基板

結構、部品は多いです。

FMラジオモジュール

SparkFunのだそうです。

完成図


さほど問題もなく、すぐに動作しました。抵抗が3種類しかなかったりと間違いにくいような工夫がされていると思いました。

広いパターンのあるあたりは、やたらハンダがのりずらかったです。最初、電解コンデンサの足が浮いていたみたいで、すごいハム音に悩まされましたが、ぐらぐらしてる電解コンデンサに触ると音がクリアになりました。はんだづけし直すとハム音も消えました。マイコンとか色々いるので、グランドが広く取ってあるみたいです。

電源を落として、入れ直すときに、たまに起動しないことがありました。まだ何か変な所があるのかも。

休日を楽しくすごさせていただきました。

mbedがきました

2009-11-26 21:35:07 | mbed
スイッチサイエンスさんにmbedが」の続きになります。

もう来ちゃいました。はやーい

こんな箱に入ってました。


箱を開けてみました。

左下はmbedシール、左上はプラスチックのmbedカード、左中は厚紙のmbedカードです。もちろん、CD-ROMなんて入ってません。

近影


実は裏側にも部品が実装されてます。


CPUです。



最初にすることは、USBでつなぐことです。すぐにドライバがインストールされてUSBドライブになります(マスストレージクラス)。ストレージの大きさは2Mバイトです。
次にすることはアカウントの登録です。USBドライブを開くとMBED.HTMがあるのでダブルクリックすると、mbed.orgのユーザー登録のページに飛びます。ユーザー登録をするとコンパイラが使えるようになります。ついでにユーザーのホームページもできて、ブログを書いたり、プログラムを公開できるようになったりします。知の結集というか、その場で作って動いたものをどんどん集めていく場所を提供しています。
ちなみに、私のページはこちらになります。中身は何もありません。

さて、さっそくLチカです。

まずは、mbedのドライブをエクスプローラで開きます。


でもって、こちらからダウンロードした実行ファイルをドラッグ&ドロップでコピーします。

コピーしたのでファイルが増えてます。

でもって、リセットボタンを押すとLチカがはじまります。


うーん、驚異の最速Lチカボードですね。

PSoC3キット増殖中

2009-11-26 20:03:57 | PSoC
CypressPSoC3の純正キットが増えています。前回調べたのは9/18でした。そのときは、001,002,003,008,009の5種類でした。006、007、029が追加になって8種類になりました。やはり番号が飛んでいたのは、間の番号のキットを作ってたんですね。となると、004と005あたりが気になるところです。

CY8CKIT-001 PSoC® Development Kit ... 開発ボード、CPUモジュールを取り替えることができる
CY8CKIT-002 PSoC® MiniProg3 Program and Debug Kit ... MiniProg3
CY8CKIT-003 PSoC® 3 FirstTouch™ Starter Kit ... 入門向けキット
CY8CKIT-006 PSoC® 3 LCD Segment Drive Evaluation Kit ... (新)セグメントLCDドライブ評価キット
CY8CKIT-007 PSoC® 3 Precision Analog Voltmeter Demo Kit ... (新)アナログ電圧計デモキット
CY8CKIT-008 PSoC® CY8C29 Family Processor Module Kit ... 開発ボード用のPSoC1モジュール
CY8CKIT-009 PSoC® CY8C38 Family Processor Module Kit ... 開発ボード用のPSoC3モジュール
CY8CKIT-029 PSoC® LCD Segment Drive Expansion Board Kit ... (新)開発ボード用のセグメントLCD拡張モジュール

CY8CKIT-006の写真

PSPみたいな形です。

6ピンAVR

2009-11-25 20:43:00 | AVR
マイコミジャーナルの記事「Atmel、6ピン AVR MCUファミリを拡充」で、ATtiny4/5/9のことを知りました。

Atmelのニュースリリース

ATtiny4 ROM 512byte RAM 32byte
ATtiny5 ROM 512byte RAM 32byte A/Dあり
ATtiny9 ROM 1kbyte RAM 32byte
ATtiny10 ROM1kbyte RAM 32byte A/Dあり

動作電圧は1.8V-5.5Vで最大動作周波数は12MHzです。ピンのピッチは0.95mmで、全体は3mm角という小ささです。

スイッチサイエンスさんにmbedが

2009-11-25 00:25:53 | mbed
以前、Sirius506さんのマイコン工作実験日記で見かけたmbedスイッチサイエンスさんに入荷しています(リンク)。本家のmbed.org


インターネットコムの記事「ARM と NXP、マイクロコントローラ搭載システム開発ツール「mbed」を発表

プロトタイピングツールということで、Coretex-M3の載ったArduinoみたいなものです。開発ツールがブラウザで動くのと、ストレージクラスを使ってるっぽいので、書き込みがファイルコピーでできてしまうっぽいのがユニークな点です。

CPUはNXPのCortex-M3、LPC1768(100MHz動作、ROM 512k、RAM 64k)です。もったいないくらいの高性能CPUです。現在LPC2368バージョンも開発中みたいです。(11/25追記 LPC2368は旧バージョンです。)

回路図も見れます(テクニカルリファレンス)
クックブックのページに色々なレシピが載っていて、いい感じです。
ピン配置を見るとethernetにもつながるようです。
試しに登録しようとしましたが、mbedを持っていないと駄目みたいでした。
digikeymouserでも入手可能ですが、現在品切れです。11/25 追記 チップワンストップにもあります。

しまったあ、MTM04で買っておけばよかったあ・・・って、最近衝動買いが多すぎです。

Coron

2009-11-24 22:27:28 | その他のマイコン
Coronテクノロードが出しているロボット制御向けのマイコンボードです。MTM04会場で来場記念特別割引きで販売していたので衝動買いしてしまいました。

秋葉原だと千石で販売しています(ブログ記事)。あのポップが欲しかったかも・・・。Coronのマスコットキャラなんでしょうか。

とにかく小さいです。Arduinoと並べてみました。


CPUはARMのCortex-M3です。

STMicroのSTM32F103RET6です。動作周波数72MHz、ROM512k、RAM64kです。パッケージはTQFP64ピンです。
DesignWave 2008年5月号の付録のSTM32F103VBT6はROM128k、RAM20kでした。
STM32 Primer2のST32F103VET6もROM512k、RAM64kです。パッケージはTQFP100ピンです。

ピンが3列ずつ並んでいるのはサーボのコネクタをさせるように、信号、Vcc、GNDがペアになっています。サーボは16個制御できます。ロボットを作りたい人にはいいマイコンボードなんじゃないでしょうか。うーん、なんで衝動買いしたのか不思議です。ロボットには、とんと縁がありません。
手前のマイクロSDスロットの横にあるピンソケット(2.0mm)はXBee用です。

おまけでついてくる、CD-ROMが素敵です。Eclipseのインストールをしてくれるセットアッププログラムが入っています。setup.exe一発でインストールできるので、楽チンです。って、また今日もEclipseがハードディスクに増殖してしまいました。

液晶マイコンを使ってみました

2009-11-23 23:03:36 | その他のマイコン
ET2009で買ってきた「液晶搭載マイコン・モジュール」を使ってみました。

最低限必要なJP1とJP5だけヘッダーピンをつけています。最初JP5とCN5を間違えてつけてしまいました。気をつけましょう。って、そんなマヌケは他にはいませんね><。

CQの液晶マイコン基板特設ページからツールやサンプルをダウンロードしてインストールします。CP2102のデバイスドライバはネットからインストールでもできました。

EPSONのツールのインストール先をデフォルトのC:¥EPSONからc:¥bin¥EPSONに変えてしまったのがハマリの始まりでした。サンプルには5つのプロジェクトが含まれているのですが、まともに動いたのは1つだけ(CQ_StartSample)でした。

一応、他のサンプルも動かせたので報告しておきます。
(1) p.16の手順でプロジェクトをインポートします。
(2) Makefileの中に1箇所、ほにゃ.ldsというファイルの中に16箇所、ツールの絶対パスが書いてある場所があるので、これをインストール先に変更します。
(3) 後はp.17以降の手順に従ってビルド&書き込みをしてやります。

demo_blockだけは、実行用のコンフィグレーションがありません。ゼロから作るか他のをコピーして修正してやる必要があります。

(1) Runメニュー → External Tools → External Tools Configurationsを選びます。
(2) Programのところを右クリックしてNewを選ぶか、他のコンフィグレーションを右クリックしてDuplicateを選んでやります。
後は以下のようにMainタブとCommonタブを埋めてやります。

Mainタブ(クリックすると大きくなります)


Commonタブ(クリックすると大きくなります)


このあと、Runボタンを押してやります。注意点としては、Runメニューを選ぶ前に実行したいプロジェクト名をクリックして灰色にしておかないと、ちゃんと実行されません。Project Aを選択していてProject Bを実行しようとしていることになります。

上のコンフィグレーションの作成ですが、ゼロから作ると何箇所も入力がありますが、コピーして作ると変更箇所は2箇所だけなので楽です。

ちゃんと動くことを確認しないで公開しているっぽいので多少萎えました。

ゼロから動くプロジェクトを作るのは結構面倒っぽいので、ちゃんと動くCQ_StartSampleをインポートして名前を変えてから使うのがよさそうです。


開発ツール自体はEclipseです。最近、Eclipse多いですね。Nios II EDSもEclipseです。

PICkit2のレベル変換回路(2)

2009-11-22 22:33:37 | 電子工作
PICkit2のレベル変換回路の続きになります。

コメントでgomisaiさんに横軸を入力電圧、縦軸を出力電圧にする方法を教えてもらいました。

右下の.dcほにゃが、V1の出力を2Vから0.1Vきざみで5Vまで動かす(スイープする)設定です。
シミュレーション結果です。

ピンクがV1そのもので、緑がOUTです。赤はR1に流れている電流です。緑がピンクより上にあるのは、昨日の通りです。2Vのときは出力も2.5V、電流はなんと250mAです。

のりたんさんから、PICの出力インピーダンスを無視しているというコメントをいただきました。出力インピーダンスの計算はよく分かりませんが、233Ωくらいだろうと見当をつけて、R1=243Ωでシミュレーションしなおしてみました。

ぴったりです。2Vのときで2.11V、11.87mAになっています。3.3Vのとき3.36V、6.7mAです。

出力インピーダンスの233Ωですが、PIC18F2550のデータシートのp.382にVohは3mAのときVDD-0.7V(min)となっていたので、3mA流したときに0.7V電圧降下するなら、0.7V/3mA=233Ωなんだろうと勝手に解釈しました。このあたりはあまり自信がありません。

MTM04に行ってきました

2009-11-22 22:06:56 | その他
Make: Tokyo Meeting 04(MTM04)に行ってきました。天気はあまりよくなかったですが、大勢の人で賑わっていました。

今回は展示もやたら多く、ほとんど写真を撮っていません。

入り口にあった看板


ニコニコ技術部


講演をする小林さん

2010年春に出版される「Prototyping Lab」のお話をされていました。Arduino中級編を目指すとのことで、色々なレシピの載った本になるそうです。楽しみです。

大人の科学から「Japanino」という8bit マイコンが出るそうです。

裏に日本地図があるんでしょうか。

某所にいたフリス犬


インフローさんの所で販売していたカレンダー基板とコースター基板



2010年は寅年のような気もします。

8x8x8のLEDキューブ

ということは512個も使ってるんですね。

二足歩行ロボットBESIMOです。


もあさんのリレーを使った楽器

もなかを使ってMIDIから制御できます。

拡大図

リレーの外側をはずして、さらにストッパーもはずして、鐘を直接打つようになっています。

別の拡大図


圧電スピーカを使った入力装置


測距離計を使ったエアギター

ここまで、もあさんのところです。

踊るタコルカ


YM2151シールド。YamahaのFM音源ICを使ったシールドです。

作られた方のブログです。まずはYM2151を入手するところからすごいです。

Arduinoというか、ATMega328を使って160x120くらいのNTSC出力をされています。

スケッチとかではなく、ごりごりのアセンブラだそうです。階調も16レベルあるそうです。タイミングを合わせるのがたいへんだったとか。ぜひともソース公開していただきたいものです。


Arduinoとしては全く使ってないとのことです。

O'Baka Projectの色々(Arduino Diecimila を使う)
ワンチップArduino




スケルトンArduino。完全に空中配線のみで作られています。

他にCNCで基板を削るデモもされてました。

ペーパークラフトのテオ・ヤンセン(Emerge+さんのページ)

紙なのに動くー

振るとなるグラス。中のボードはSunのロゴがありました。


なんでも作っちゃう、かも。さん

スタバカップスピーカーのワークショップをされていました。

LED Tile (詳しくはこちら)

裏側

マトリックスLEDの裏にぴったり回路を作っています。どうやってはんだづけしたのかは謎がいっぱいです。見えているICはPSoCだそうです。これをたくさんつなげることができます。


とまあ、これで10件くらいのご紹介です。全部で140件なので、とんでもない状況です。とても紹介しきれません。まだ、明日もやってます。

今回買ってきたもの

マイコンボードCoron ARM Corex-M3(STM32 72MHz)搭載だそうです。
Tokyo Hackerspace Portable Hackable Sign 8x8マトリックスLEDに流れるメッセージを出します
16x16マトリックスLED
FMラジオキットFK1

PICkit2のレベル変換回路

2009-11-22 00:10:47 | 電子工作
MicroChipのPICkit2はユーザーズガイドに全回路図が載っています。
PICkit2はPIC18F2550が5Vで動作しています。プログラム用のICSPCLKとICSPDATの2本の制御線はターゲットと同じ動作電圧で入出力するのでレベル変換をしています。PICkit3では、レベル変換用のIC(74LVC1T45)を使っていますが、PICkit2はディスクリートで組まれています。回路図を見ても動作がよく分からなかったので、LTspiceで動かしてみました。

回路はこんな感じです。

V1から5Vのパルスが出ています。3.3Vがターゲットの電圧として、OUTから3.3Vのパルスが出るはずです。

シミュレーション結果です。

緑がV1の出力の5Vパルスで、紫がOUTの出力です。3.50373Vのパルスになっています。消えた1.5Vはどこにいっちゃったんでしょう?こういうのは、あいかわらずさっぱりです。

ターゲット電圧を2VにするとOUTは2.5Vになります。ちょっと高めの電圧が出てくるようです。

R1は150mA流れてることになっています。もちろんPIC18F2550は、そんなに流せません。

逆向きにして、OUT側から3.3Vのパルスを入力してやると、3.3Vがそのまま出てきます。

.step paramを使ってターゲット電圧を動かしてみました。

3Vから0.3Vきざみで5Vまで動かしました。緑がターゲット電圧、紫がHのときの電圧です。横軸にターゲット電圧を取ればいいのですが、やり方がよく分かっていません。3VのときでOUTは3.23V、3.3Vで3.5V、3.6Vで3.78Vという感じでターゲット電圧が高くなるにつれて、OUTとの差は縮まっています。

よく分かってなくても回路図があれば回路シミュレータでどんな動作をするか調べることができるのは便利です。今月のトラ技がトランジスタの特集号だったので勉強しなおしてきます。