1.2V LED 閃爍燈電路, 動作的原理

http://wp.me/ph3BR-1Lg

 

1.2V flasher
1.2V flasher

2016年3月途中座車被刺破輪胎被迫停在國一南下294K, 人人都跑下車, 等待拖吊車期間看到一個破的警示燈, 估計是以前施工時被遺棄的, 經過風吹雨打, 零件的金屬腳和電池片有一點點生鏽, 用腳輕輕踢一下, 突然被刺眼的紅光閃了一下, 怎麼一個破東西居然還會閃…? 但是拿起來以後就再也弄不閃了, 於是撿回來放在旁邊, 看看電池還有1.23V, 就一直放著, 看起來電池像鋰電池或者NI-MH電池. 這樣就過了大約5個月, 再次看看電池, 還是大約1.2V, 確認不是鋰電池, 應該是1.2V的 NI-MH 或者 NI-CD 的充電池. 除了那一下閃燈, 怎樣按壓她的開關就是不再亮起來.

為了瞭解閃不閃的原因, 用導線直接短接開關的接點, 果然又再次閃動. 這種閃爍燈很多見, 可是從來沒有機會看看他怎樣設計的. 以往也看了好一些電路設計, 知道用1.5V電池點亮LED, 無非就是震盪和昇壓, 讓電壓高過電池電壓和LED的導通電壓, 使其發光.

對這個爛東西特別注意的原因, 其一是沒見過類似的, 要花錢買就不必了; 其二是類似的設計應該是有太陽能電池的或者裝了3V或6V的普通/鉛酸電池的, 現在破損太陽能電池和燈殼都不見了, 也沒有3V或6V的電池在裡面, 體積是嬌小的, PCB也沒有感光元件. 一般在路邊看到的都是白天不見他閃, 暗黑以後就自動開始閃起來. 記得有次問小學生同樣的問題, 他們回答說, 應該是有人每天傍晚去逐個開燈, 所以才會晚上在閃而白天不閃….可愛的小學生猜想的答案, 後來她的觀察結果說, 有個傍晚站在捷運站門口觀察圍籬上的警示燈, 發現了沒人在看管, 自動閃起來的, 隔天早上去上學就看不到在閃了, 一定有些巧妙在裡面的.

怎樣說有了這樣免錢的玩具, 也應該要像小學生一樣追尋想要了解的答案. 有空開始了這個項目的研究和學習.

1.2V-LED-flasher-collected
1.2V-LED-flasher-collected

 

2016-AUG-23, 初次拆開了電路板和開關, 清理了鏽垢, 加了一些凡士林作為防氧化的保護在開關的接點, 這樣開關就可以控制閃亮或不閃.

比照實物, 畫了大約的零件放置圖, 這些LED封裝肯定是次級品, 正負極打線是相反了, 第二次遇見, 開始畫電路圖就是覺得兜不起來, 後來用小工具點亮來看確認才知道. 細看PCB印字也可以確認.

nEO_IMG_reverse-engineering-component
nEO_IMG_reverse-engineering-component

 

再來畫PCB走線圖, 大約的不成比例, 手工抄板就是這樣的; 但是個人喜歡這種手工餅乾加上簡單的上色, 有點點淡彩素描的味道, 容易閱讀, 基本上和文字閱讀一樣原理; 然後嘗試把它變成電路圖 (SCHEMATIC), 那樣才好分析整個電路的設計和原理.

畫PCB走線圖

nEO_IMG_reverse-engineering-PCB
nEO_IMG_reverse-engineering-PCB

 

畫電路圖

nEO_IMG_reverse-engineering-SCH
nEO_IMG_reverse-engineering-SCH

 

最後得到了一個結果, 也是類似前輩們提供資料, 例如這個 http://bbs.pigoo.com/thread-61635-1-1.html

這個燈的電路裡面, 應該有好幾個設計巧妙安排的地方. 沒有示波器在手邊, 沒有能力完全了解實際的操作原理, 猜想了一下還是沒完全理解, 試試看用LTSPICE 來模擬, 原來2013年第一次用, 這次用起來還好沒有完全忘記. 低頻的震盪器負責亮燈滅燈的間隔時間控制, 也就是人眼看到的狀態, 看起來還好; 高頻的震盪器可是負責LED發光熄滅的工作, 可是就是完全看不出來有震盪的結果, 和實物不吻合, 那一定是用LTSPICE模擬沒有設定好的結果.

以下那圖就是初次做的模擬圖, 一條平直的線, 表示沒有模擬出有震盪的現象. 而且認為那個是很可能是Colpitts 震盪器, 但是又不完全一樣. 高頻的震盪器模擬圖, 應該是不正確的, 因為實物會亮, 表示必須有震盪.

1.2V-OSC-SIM-NG
1.2V-OSC-SIM-NG

 

低頻的震盪器模擬圖, 看來還好

1.2V-LED-flasher-low-osc-OK
1.2V-LED-flasher-low-osc-OK

 

2016-AUG-25, 請教了另外一些前輩, 個人對 LTSPICE 學習和運用也是從那裡開始引發的. 問題也是圍繞那高頻震盪器的部分. 參考以下的電路圖區塊, LED+ 是直接連到1.2V電池, 如果沒有震盪出現, LED是否會亮呢? 答案是不會, 因為紅色 LED 需要大約1.8V才開始導通而發光, 其他顏色的LED還要更高的電壓. 理論上來說, 1.2V電池需要升壓電路以驅動 LED 發光沒錯, 但是實際這個電路組要做到 “降壓", LED 才能發光, 因為 LED+ 接 +1.2V, 如果要導通發光, 如果LED-的那隻腳接到一個假想的電壓 x, 然後使LED亮起來, 那這個關係就是 1.2 – x > 1.8, 這個1.8是 LED 導通電壓 Vf, 通常紅色 LED 就這個數, 其他顏色的 LED 大約 2.3V-3.2V 之間. 個人對這個算術表達的理解, 例如 1.2 – (-0.7) > 1.8, 意思就是說, 只要電池是1.2V接 LED+ , 另外 LED- 的那隻腳如果出現 -0.7V 或者更低的電壓 (例如-1.0V) 的話, LED 就會發光了. 怎樣做到這點呢 ?! 回憶以前學到的, 一個電容或者電感, 被充電後就形同是一個電池, 他們的正負極, 電容和充電時的一樣, 電感的會反轉過來. 這次用的應該是一個電感. 因此, 肉眼看見LED 亮起來的時候, 實際上LED 在很快速的閃爍, 據說這裡的電路每秒閃10萬次 (100KHZ) 之多, 人的眼睛對這樣的閃爍視而不見, 認為它一直在亮直到沒電, 而看不見那麼快速的亮滅過程.

LED and L1, how it works and light on oscillation
LED and L1, how it works and light on oscillation

 

2016-AUG-26, 有了前輩的指導, LTSPICE 模擬的結果也出來了, 應該和實際的電路不會差太遠, 除了人眼看到的閃滅時間的間隔 (低頻震盪器的模擬結果不太對, 但堪用就好了), 高頻的震盪模擬結果完全出現了. 之前看不出來震盪, 原因是 LED 必須選一個特定型號的, 不能單純套用 LTSPICE 裡面那的 LED. 在模擬當中, LED 的 1.8V 導通電壓是啟發震盪的關鍵, 純粹 LED 在 LTSPICE 裡面被視為普通一顆DIODE, Vf 只有0.7V, 因此模擬不出來會起震盪. 原因這帖有說明 https://www.hkepc.com/forum/viewthread.php?fid=146&tid=2316024&extra=&page=1

 

高頻的震盪模擬結果, 每個點都在震盪, NPN 和 PNP

1.2V-H-OSC-WORKING-SIM-COMPLETE
1.2V-H-OSC-WORKING-SIM-COMPLETE

 

2016-AUG-27, 總結時間到了. 要點亮個 LED 而已為甚麼要搞那麼多震盪器 ? 原因有二,

  1. 電池供電只有1.2V, 不能直接點亮任何現存的LED, 必須昇壓或降壓, 就需要震盪電路; 震盪提供了高電壓可點亮LED, 但是它必然會在很高速度下亮滅LED, 而人眼看到LED是一直亮著;
  2. LED 警示燈是不斷在閃動的, 例如每秒閃一次, 那這樣必須有東西關閉上面那個高速震盪器, 讓 LED 看起來就是完全不亮, 這個狀態就需要到另外一個震盪電路;

所以這個電路裡面總共有兩個震盪器, 一個高頻 (100KHZ), 一個低頻 (1HZ).

至於這個人眼睛看到的不斷在閃動的警示燈狀態, 其實機械式的震盪器也是存在的, 回想起來, 以前已經學習過了一個類似東西, 二奶罐? 親手 DIY 一個 [傾斗式雨量計] (Tipping bucket rain gauge) http://goo.gl/y4dC9X, 找回當時拍的短片, 放YOUTUBE比較一下機械式震盪器的效果, 例如,
裝水 = 看到LED滅了.
倒水=看到LED亮了.
或者反過來描述也可以.
h_ttps://youtu.be/OVQTF8249LQ

雨量計是一個純機械的震盪器, 簡單而容易實作模擬, 而這個警示燈是純電子的震盪器, 兩者表現一致, 現在終於明白了更多關於自然界有關震盪的東西和他的原理.

 

這個LED警示燈大約20元人民幣, 過海了加上稅金大約200台幣, 撿到的不要錢, 但是花了很多時間學習, 價值不菲, 學到的是更加深入認識自然界的震盪現象.

完整的電路模擬, Q1 – Q4, 要選其中一種型號, 不能單純選 PNP 或 NPN; C2 模擬時選0.1uF 或 1uF, 如果用實際電路的10uF, 會跑很久都沒反應, 因為時間常數太大, 零件參數太完美而沒有結果.

另外一個巧妙的地方是太陽能電池同時擔任充電來源和警示閃爍控制的功能. 簡單來說, 白天充電, 並迫使低頻震盪器停駛, 這樣小學生就看到它不閃了, 到了傍晚沒了太陽能電池提供電力, 低頻震盪器自動開動, 開始閃. 研究和理解的結果在手寫筆記上有說明, 前輩們也有說明這點. 所以這燈不需要另外的感光元件. 對比那買來, 結構不同, 沒用太陽能電池的當然設計也不同, 需要用一個感光電阻.

nEO_IMG_LED flasher different design
nEO_IMG_LED flasher different design

 

 

短片說明閃燈的過程 (沒有了太陽能電池的, 只有插座存在)

h_ttps://youtu.be/ZgfxnRPUw4o

1.2V-LED-flasher-sim-complete
1.2V-LED-flasher-sim-complete

 

找尋GOOGLE 有關關鍵字 1.2V 警示燈, 會有很多相關的資料, 其中類似的, 會說明類似的產品規格, 例如,

太陽能電池 0.35W 電壓 2.5V 電流 140mA 效率 14%
儲電電池, 使用充電式鎳氫電池 1.2V/1400 mAh,
閃爍頻率每分鐘閃爍約90次

說明類似的產品和檢來的這個差不多, 因此確定是1.2V的電路設計沒錯了.

nEO_IMG_1.2V LED flasher-market1
nEO_IMG_1.2V LED flasher-market1
nEO_IMG_1.2V LED flasher-market3
nEO_IMG_1.2V LED flasher-market3
nEO_IMG_1.2V LED flasher-market2
nEO_IMG_1.2V LED flasher-market2

 

 

最後, 手稿來了, 雖然達文西手稿可比這些畫得漂亮很多, 不過達文西在漂亮的手稿也是他的歷史, 他沒能力做到今天這點. 時間是生物的殺手, 有時間做自己想要達成的事情都是完美的時刻, 好好運用時間了解自然定律, 學習也是個過程而已. 全亮大約 1.2V @ 50 mA., 電池低壓, 閃動速度變慢.

1.2V LED flasher design note1
1.2V LED flasher design note1
1.2V LED flasher design note3
1.2V LED flasher design note3

 

以前看過也是實驗過的一些 1.2V 點亮 LED 的電路, 各有巧妙的設計地方.

1.2V LED flasher design note2
1.2V LED flasher design note2

 

LTSPICE 的模擬的源碼,

文件存儲位置 C:\Program Files (x86)\LTC\LTspiceIV

文件名稱 1.2V LED flasher.asc

有關 SPICE 指令也可以看看這個 http://bwrcs.eecs.berkeley.edu/Classes/IcBook/SPICE/UserGuide/analyses_fr.html


Version 4
SHEET 1 1200 680
WIRE -304 -352 -448 -352
WIRE 320 -352 -304 -352
WIRE 656 -352 320 -352
WIRE -448 -304 -448 -352
WIRE 608 -208 528 -208
WIRE 656 -208 656 -352
WIRE 656 -208 608 -208
WIRE 688 -208 656 -208
WIRE 768 -208 688 -208
WIRE -448 -176 -448 -224
WIRE 528 -160 528 -208
WIRE 608 -160 608 -208
WIRE 688 -160 688 -208
WIRE 768 -160 768 -208
WIRE -304 -144 -304 -352
WIRE 528 -64 528 -96
WIRE 608 -64 608 -96
WIRE 608 -64 528 -64
WIRE 656 -64 608 -64
WIRE 688 -64 688 -96
WIRE 688 -64 656 -64
WIRE 768 -64 768 -96
WIRE 768 -64 688 -64
WIRE 320 48 320 -352
WIRE 384 48 320 48
WIRE 656 48 656 -64
WIRE 656 48 480 48
WIRE -304 80 -304 -64
WIRE -256 80 -304 80
WIRE 128 80 -160 80
WIRE 496 160 336 160
WIRE 656 160 656 48
WIRE 656 160 560 160
WIRE -208 192 -208 144
WIRE -192 192 -208 192
WIRE -96 192 -112 192
WIRE 656 208 656 160
WIRE -208 240 -208 192
WIRE 432 240 432 112
WIRE 656 256 656 208
WIRE -96 288 -144 288
WIRE -16 288 -16 192
WIRE -16 288 -96 288
WIRE 0 288 -16 288
WIRE 16 288 0 288
WIRE 96 288 64 288
WIRE 128 288 128 80
WIRE 128 288 96 288
WIRE 192 288 128 288
WIRE 288 288 272 288
WIRE 336 288 336 160
WIRE 336 288 288 288
WIRE 368 288 336 288
WIRE 128 320 128 288
WIRE 288 336 288 288
WIRE -208 416 -208 336
WIRE 128 416 128 400
WIRE 128 416 -208 416
WIRE 288 416 288 400
WIRE 288 416 128 416
WIRE 432 416 432 336
WIRE 432 416 288 416
WIRE 656 416 656 336
WIRE 656 416 432 416
WIRE 128 432 128 416
FLAG 128 432 0
FLAG -448 -176 0
FLAG 656 208 Hi-osc
IOPIN 656 208 Out
FLAG -96 288 VBL
FLAG 96 288 Low-osc
FLAG 336 160 feedback
SYMBOL res 288 272 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R5
SYMATTR Value 220
SYMBOL cap 304 336 M0
SYMATTR InstName C1
SYMATTR Value 1000p
SYMBOL cap 560 176 M270
WINDOW 0 32 32 VTop 2
WINDOW 3 0 32 VBottom 2
SYMATTR InstName C3
SYMATTR Value 100p
SYMBOL cap 64 272 R90
WINDOW 0 0 32 VBottom 2
WINDOW 3 32 32 VTop 2
SYMATTR InstName C2
SYMATTR Value 1湩
SYMBOL res 112 304 R0
SYMATTR InstName R4
SYMATTR Value 10k
SYMBOL voltage -448 -320 R0
WINDOW 123 0 0 Left 2
WINDOW 39 24 124 Left 2
SYMATTR InstName V1
SYMATTR Value 1.2
SYMBOL res 0 176 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R2
SYMATTR Value 360k
SYMBOL res -96 176 R90
WINDOW 0 0 56 VBottom 2
WINDOW 3 32 56 VTop 2
SYMATTR InstName R3
SYMATTR Value 2Meg
SYMBOL ind 672 240 M0
SYMATTR InstName L1
SYMATTR Value 10焙
SYMBOL res -320 -160 R0
SYMATTR InstName R1
SYMATTR Value 6.8k
SYMBOL LED 784 -160 M0
SYMATTR InstName D1
SYMATTR Value NSPW500BS
SYMBOL LED 704 -160 M0
SYMATTR InstName D2
SYMATTR Value NSPW500BS
SYMBOL LED 624 -160 M0
SYMATTR InstName D3
SYMATTR Value NSPW500BS
SYMBOL LED 544 -160 M0
SYMATTR InstName D4
SYMATTR Value NSPW500BS
SYMBOL npn 368 240 R0
SYMATTR InstName Q4-S8050
SYMATTR Value 2N3904
SYMBOL npn -144 240 M0
SYMATTR InstName Q2-S8050
SYMATTR Value 2N3904
SYMBOL pnp -160 144 M270
SYMATTR InstName Q1-S8550
SYMATTR Value 2N3906
SYMBOL pnp 480 112 M270
SYMATTR InstName Q3-S8550
SYMATTR Value 2N3906
TEXT -256 -280 Left 2 ;1.2V LED Flasher\nSolar panel to charge Ni-MH battery\nHi-freq-osc\n \nxiaolaba\n2016-AUG-23, physical circuit is owrking in charm,\nbut LTspice has no show any waveform, why?\n \n2016-AUG-25, review the first attempts with LTspice, uic hato set\nChange control to startup uic, replace LED with forward voltage higher than 0.7v\n \n2016-AUG-28, re-arrange C1& C3 position for easy reading
TEXT -480 456 Left 2 !.tran 0 10 0 10 startup uic
TEXT 488 104 Left 2 ;feedback cap

 

實驗報告 – 畢. 2016-AUG-27, xiaolaba

廣告

MC68HC908QT2, experiment of FET crystal oscillator for impedance matching

nEO_IMG_DSCF3109.jpg

這個試驗, 全因為是需要解決問題而作的. 故事是這樣的, 俺做好了一個 JFET OSCILLATOR, 最初在麵包板插件, 搭起一個個棚架, 確認過 PROTOTYPE 的工作及功能都正常後, 所以繼續在餘暇把所有的 [模組] 拼湊在一起, 準備放個盒子裡, 方便使用.

Continue reading “MC68HC908QT2, experiment of FET crystal oscillator for impedance matching"