Ừ, như vậy thì phải gắn công tắc on/off rồi. Mình đang tính cách dùng mạch để khi dưới 10,2V thì ngắt luôn nguồn cho bo EGS và 3525 chứ quên tắt công tắc thì cạn bình mất!
Thông báo
Collapse
No announcement yet.
TỰ LÀM 600W PURESINE INVERTER 12VDC - 220VAC (Mở lại chủ đề của thanhfdc bị xóa nhầm)
Collapse
This is a sticky topic.
X
X
-
Code:/***************************************************** This program was produced by the CodeWizardAVR V2.05.0 Professional Automatic Program Generator © Copyright 1998-2010 Pavel Haiduc, HP InfoTech s.r.l. http://www.hpinfotech.com Project : Version : Date : 8/31/2016 Author : NeVaDa Company : Comments: Chip type : ATmega8L Program type : Application AVR Core Clock frequency: 16.000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 256 *****************************************************/ #include <mega8.h> #include <delay.h> #define A PORTD.0 #define B PORTD.1 #define C PORTD.2 #define D PORTD.3 unsigned int sin_tab[100]={0, 1, 2, 2, 3, 4, 5, 5, 6, 7, 8, 8, 9, 10, 11, 11, 12, 13, 13, 14, 15, 15, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 22, 23, 23, 23, 24, 24, 24, 24, 24, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 24, 24, 24, 24, 24, 23, 23, 23, 22, 22, 22, 21, 21, 20, 20, 19, 19, 18, 18, 17, 17, 16, 15,15, 14, 13, 13, 12, 11, 11, 10, 9, 8, 8, 7, 6, 5, 5, 4, 3, 2, 2, 1}; // Timer1 overflow interrupt service routine unsigned int i; interrupt [TIM1_OVF] void timer1_ovf_isr(void) { OCR1A= sin_tab[i]; i++; if (i==100) { i=0; A=~A;B=~B; C=~A;D=~B; } } void main(void) { PORTB=0x00; DDRB=0x02; PORTC=0x00; DDRC=0x00; PORTD=0x00; DDRD=0xff; TCCR0=0x00; TCNT0=0x00; TCCR1A=0x82; TCCR1B=0x1B; // time 1 : 0,25Mhz TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x19; // gia tri TOP=25 OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; MCUCR=0x00; TIMSK=0x04; UCSRB=0x00; ACSR=0x80; SFIOR=0x00; ADCSRA=0x00; SPCR=0x00; TWCR=0x00; // Global enable interrupts #asm("sei") while (1) { } }
Comment
-
đây là code e viết tren codevision dùng time1 chế độ fast PWM top=ICR1 . trong 1/2 chu kỳ (10ms) chia 100 khoảng (mỗi khoảng 0,1ms) .Em sử dụng thạch anh 16M chia 64 =0.25Mhz , =>> cứ 4us thì TCNT1 tăng 1 vậy 0,1ms thì TCNt1 đếm 25 lần =>> set giá trị TOP : (ICR1L=0x19 )còn duty thì dùng cập nhật bảng sin OCR1A= sin_tab[i] không biết như vậy có đúng ko nhỉ ???? tín hiệu ABCD dùng để kết hợp với 74hc08 rồi đưa vào cầu H
Comment
-
Nguyên văn bởi quocviet253 Xem bài viếtđây là code e viết tren codevision dùng time1 chế độ fast PWM top=ICR1 . trong 1/2 chu kỳ (10ms) chia 100 khoảng (mỗi khoảng 0,1ms) .Em sử dụng thạch anh 16M chia 64 =0.25Mhz , =>> cứ 4us thì TCNT1 tăng 1 vậy 0,1ms thì TCNt1 đếm 25 lần =>> set giá trị TOP : (ICR1L=0x19 )còn duty thì dùng cập nhật bảng sin OCR1A= sin_tab[i] không biết như vậy có đúng ko nhỉ ???? tín hiệu ABCD dùng để kết hợp với 74hc08 rồi đưa vào cầu H
Comment
-
Hnay cúp điện e lấy cái inveter ra xài quạt máy, wên dặn bà chị nên bả mở máy nước nóng thì cái quạt máy quay rề rề ko nổi đồng thời e nghe cái inveter nó kêu è...è. Hoảng wá lại tắt kịp thời.
E ko hỉu sao con Rshunt e thiết kế cho 600w, đág lý mở máy nước nóng nó phải báo ngắt wá dòng nhưng tại sao nó ko ngắt mà nó kêu è...è và tuột áp ra ạ. E xem lại board EGS thì thấy nó thiếu con R27 như board của bác dinhthuong80, vậy đó có phải là nguyên nhân?. Các bác bắt mạch giúp e với
Comment
-
Nguyên văn bởi Nguyenson318 Xem bài viếtNếu quá tải là EGS ngắt ngay chứ bạn.
Comment
-
Nguyên văn bởi TP_Electro Xem bài viếtTăng 250 lần thì được 1ms vậy nếu chọn độ phân giải duty của pwm là 250 thì 1/2 chu kì sin chỉ tạo được có 10 mẫu (khoảng )là quá ít. => sin xấu. Nếu chia 133 khoảng thì được số bậc mẫu duty là 150 với thạch anhh 16Mhz/8 nhưng Fspwm lúc này được có 13.3khz. Nếu clock 16Mhz/8 thì ICR1=100 và có 200 khoảng (mẫu, nhưng có sự trùng lặp 2 lần 1 mẫu thực ra chỉ có 100 mẫu) và Fspwm = 20khz cũng tạm đc. Còn nếu muốn tăng thêm độ phân giải mà tần số cao thì e là phải tạo bảng sin 16bit. độ phân giải 86 bậc thì có 232 khoảng.
Còn code của mình mới là chia 250 bậc sin.tuy nhiên mình chọn chu kỳ pwm lớn hơn mỗi khoảng.vì vậy trong 1 khoảng thì pwm nhiều lần nên tần số song mang của mình cũng cao hơn.đến tận 62khz.trước mình dùng bo egs cuộn lọc kêu e e nhưng dùng avr lập trình với tần số vậy thì cuộn lọc k kêu,fet mình chưa tản nhiệt chạy bóng 75w thử thì chỉ hơi ấm ấm
Còn code mình thì minhfvdungf avrstudio7.
Comment
-
Nguyên văn bởi dinhthuong80 Xem bài viếtĐây là thành quả lao động nè, sin ra không được 100% nhưng đảm bảo hơn điện lưới rồi, cảm giác tự chế thật thú vị biết bao! Đúng là EGS cũng không đến nỗi khó chịu như mình nghĩ.
BAX mình dùng lõi EỊ33 của PSU, sơ 3 vòng, thứ 92vòng, chỉnh áp ra 360V, dòng không tải 0.2A, chạy tải 50W fet 3205 tản nhiệt 25x22x12 ấm ấm, hiệu suất chỉ đạt >82% chắc cũng ổn vì mới tải 50W nhỉ?
Có khúc mắc là khi áp 10.2V ngắt mạch rồi sau đó áp bình tăng lên mà đợi hoài không thấy mạch DC-DC không hoạt động, phải ngắt nguồn cấp lại mới chạy tiếp, như vậy là bình thường phải không các bạn?
Comment
-
Nguyên văn bởi moto Xem bài viếtVậy chắc là nó wá, để mai rãnh e hàn xem sao, nó làm e một vố hết hồn. Lấy về e đống vô chứ cũng ko xem lại sơ đồ xem thiếu đủ ra sao nửa. Hnay mới xem kỹ lại thì bị thiếu, nhưng board của bác giá trị bao nhiu ạ.
Comment
-
Nguyên văn bởi developerv Xem bài viết
Hình như bạn nhầm rồi.bạn đấy chia 100 khoảng mà.và chu kỳ pwm bạn đấy chọn là đúng bằng 1 khoảng luôn nên chỉ cần dùng 1 timer 1 để vừa tạo pwm vừa cập nhật bảng sin.
Còn code của mình mới là chia 250 bậc sin.tuy nhiên mình chọn chu kỳ pwm lớn hơn mỗi khoảng.vì vậy trong 1 khoảng thì pwm nhiều lần nên tần số song mang của mình cũng cao hơn.đến tận 62khz.trước mình dùng bo egs cuộn lọc kêu e e nhưng dùng avr lập trình với tần số vậy thì cuộn lọc k kêu,fet mình chưa tản nhiệt chạy bóng 75w thử thì chỉ hơi ấm ấm
Còn code mình thì minhfvdungf avrstudio7.
Comment
-
Độ phân giải pwm chỉ có 25 cho biên áp là quá thấp.
bạn TP_Electro cái câu in đậm này mình thấy thật sự là k có ý nghĩa. timer nó tăng đến 25 thì nó xảy ra ngắt tràn timer và cập nhật giá trị bảng sin mới cho pwm. cho dù cái này có là 250 hay 1000 cũng vẫn như nhau. bởi vì ở đây bạn đấy chọn timer để ngắt cũng là tạo pwm luôn nên nếu muốn tăng tần số thì tăng khoảng chia. chứ cái con số 25 ở đây k có ý nghĩa gì cả. cái chính ảnh hưởng chỉ là tần số pwm và số khoảng chia. còn cái 25 này là bạn đấy chọn để thời gian ngắt timer nó bằng đúng 1 khoảng sin đã chia để cập nhật pwm. nếu ở đây bạn chọn click timer chia 2 chẳng hạn thì con số 25 sẽ phải là 50 và mọi thứ k hề thay đổi. tần số pwm vẫn vậy. giá trị sin vẫn là 100 khoảng. nên mình nói cái số 25 này chỉ là tính toán sao cho nó khớp thời gian cập nhật. chứ k có ý nghĩa gì khác.
mình nghĩ bạn đang hiểu nhầm còn số này với cái gì đó. ở đây nếu nói rõ ràng thì chia nửa chu kỳ sin cho 100 như vậy là 0.1ms 1 khoảng. và theo như code này thì trong 0.1ms đó chân pwm chỉ on và off đúng 1 lần vừa khít khoảng 0.1ms đó(chu kỳ pwm =0.1ms). và sau mỗi 0.1ms thì phải cập nhật giá trị mới cho pwm khớp với bảng sin. và cái 25 này là để tính thời gian vừa khít 0.1ms để thay đổi giá trị pwm chứ ngoài ra k có ý gì khác nghĩa khác,nếu mình chọn chia tần timer khác đi thì con số 25 này nó khác đi. nhưng nó vẫn phải tính đến 0.1ms để cập nhật pwm. và đếm bao nhiêu k quan trọng quan trọng là đếm đủ đến 0,1ms.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamNhịp 2/4 1 trường canh có 2 nốt đen. Nhịp 3/4 1 trường canh có 3 nốt đen. Nhịp 4/4 1 trường canh có 4 nốt đen.
Các điệu nhạc sẽ có âm bass ở phách mạnh. Dồn 2 trường canh 2/4 thành 4/4 chơi điệu chachacha, nghe "kỳ cục" lắm....-
Channel: Tâm tình dân kỹ thuật
08-05-2024, 07:05 -
-
Trả lời cho Dùng MC34063 để làm driver lái led 1W, 3Wbởi bqvietDatasheet PT4115 có sẵn sơ đồ chuẩn, lắp theo đúng nó là xong. Mạch cực đơn giản luôn.
-
Channel: Điện tử dành cho người mới bắt đầu
08-05-2024, 00:31 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Cháu có biết gì về nhịp 2/4 hay 4/4 đâu, hôm bữa hỏi chú nhạc sĩ kia nói là để 2/4 ạ....
-
Channel: Tâm tình dân kỹ thuật
07-05-2024, 21:47 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamNhịp 4/4 người ta mới chọn điệu Chachacha. Cháu viết nhịp 2/4 thì 2 trường canh mới hoàn thành điệu chachacha. Khi đó sẽ có lúc không khớp với tiếng trống điệu chachacha. Thời gian hành âm nhanh 120 cháu nên chọn điệu disco sẽ hay hơn....
-
Channel: Tâm tình dân kỹ thuật
07-05-2024, 20:21 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Theo gợi ý của bác, cháu dịch xuống vài nốt đây:...
-
Channel: Tâm tình dân kỹ thuật
07-05-2024, 16:42 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamHay quá dinhthuong ơi!
Tôi có sự góp ý nhỏ thế này:
1- Chachacha thường viết cho nhịp 4/4, ít thấy nhịp 2/4 lại là điệu Chachacha.
2- Đoạn Bao nhiêu yêu thương ......và điệp khúc bao nhiêu hân hoan..... cao quá làm sao ca sĩ hát nổi?...-
Channel: Tâm tình dân kỹ thuật
07-05-2024, 15:31 -
-
bởi chinhnguyen9Thú thật tôi lúng túng không biết nên gọi thế nào cho đúng nhất về dòng sản phẩm này.
Tham khảo trên AliExpress về dòng sản phẩm này, dù là hàng có thương hiệu họ cũng chưa có tên gọi khác. Ở VN có lẽ các shop muốn nhấn mạnh trong cách gọi để bộc...-
Channel: Điện tử dành cho người mới bắt đầu
07-05-2024, 10:46 -
-
Trả lời cho Dùng MC34063 để làm driver lái led 1W, 3Wbởi Nexus 6Pbác cho e xin sơ đồ mạch dc k ạ...
-
Channel: Điện tử dành cho người mới bắt đầu
07-05-2024, 10:00 -
Comment