Форум на Kuban.ru (http://forums.kuban.ru/)
-   Радиолюбитель (http://forums.kuban.ru/f1060/)
-   -   нужна помощь для сборки простой схемы (http://forums.kuban.ru/f1060/nuzhna_pomosh-_dlya_sborki_prostoj_shemy-4622830.html)

art1201 12.08.2013 23:07

нужна помощь для сборки простой схемы
 
доброго времени ,нужна помощь в сборке схемы все комплектующие есть текстолит тож,уже если честно месяца два наплывами пытаюсь собрать схему страба но неполучается ,немогу разобраться поэтому решил спросить мож кто поможет .краснодар пашковка)
схема
[url]www.autosaratov.ru/phorum/showthread.php/250541-Стробоскоп-своими-руками?[/url]

зарание за помощь спасибо братцы

Пушной звер 12.08.2013 23:24

гдето я это уже видел

art1201 12.08.2013 23:28

да в сети копипастов много, просто мысль о том что не могу сделать бесит надо собрать и успокоиться...поэтому помощи попросил

8pin 13.08.2013 02:03

да, уже было только на PICe
[url]http://forums.kuban.ru/f1060/nuzhno_sobrat-_ustrojstvo_opisanie_vnutri-4171031.html[/url]

эта схема в Proteus тоже забавно мигает

8pin 13.08.2013 11:50

>пытаюсь собрать схему страба но неполучается

возможно это потому что схема нарисована не очень наглядно, и для начала её надо разрисовать как то так.
[URL=http://fastpic.ru/view/33/2013/0813/fb6cd46e85ad50ec7a8852947ec37ac2.gif.html][IMG]http://i33.fastpic.ru/thumb/2013/0813/c2/fb6cd46e85ad50ec7a8852947ec37ac2.jpeg[/IMG][/URL]

art1201 13.08.2013 14:18

братцы мож кто рублей за 500 соберет,поможет земляку)было бы неплохо

art1201 13.08.2013 15:20

надо сделать печатку и монтаж (детали есть )

8pin 13.08.2013 19:29

Если это когда либо могло бы быть сделано то могло бы быть сделано и так.
[url=http://obrazki.elektroda.pl/2759830700_1376410892.jpg][img]http://obrazki.elektroda.pl/2759830700_1376410892_thumb.jpg[/img][/url][url=http://obrazki.elektroda.pl/5073669600_1376411007.jpg][img]http://obrazki.elektroda.pl/5073669600_1376411007_thumb.jpg[/img][/url]
За неимением десятичного счётчика использован двоичный, что конечно ограничивает число вспышек несколькими значениями из ряда 2-4-8, но мне хотелось просто посмотреть вживую. Разумеется на мк гораздо проще, но не прикольно.

art1201 14.08.2013 02:54

ну может кто ответит что нибудь в лс,
на мое предложение

art1201 14.08.2013 14:47

блин ну мож кто поможет ,тут работы на 30 минут ,и денег дам просто реально не получается,сколько будет стоить такая работа?

8pin 14.08.2013 14:52

могу подарить ту плату что на картинке, но на ней нет регулировочных резисторов и вспышки идут по четыре.
Или можно Андрей7 написать, который сделал хорошую плату в смежной схеме.
Вообще странно что китайцы такого ещё не предлагают за копейки.

art1201 14.08.2013 15:57

спасибо большо за это.но мне хотелось бы то что на схеме может сооброхим натроих)и соберем за денежное вознограждение схему) скиньте номер в лс наберу

art1201 14.08.2013 16:00

я просто хрена никого незнаю на форуме потому и [filolog]заеб[/filolog]...ываю всех реально мысль о сборке покоя не дает)

8pin 14.08.2013 18:16

К сожалению именно такой схемы как ваша у меня нет и не предвидится.
Номер Андрей7 уже давал в упомянутом выше топике - 8-905 477 21 16, не вижу причин почему бы ему не заняться.
Кстати по вашей схеме нагрузка коммутируется по отношению к корпусу, но для автомобиля возможно удобнее использовать P-канальные ключи и коммутировать шину питания, с точки зрения удобства подключения.

STEYR 15.08.2013 21:22

[quote=art1201 пашковка;31702010] да в сети копипастов много, просто мысль о том что не могу сделать бесит надо собрать и успокоиться...поэтому помощи попросил [/quote]
Типа увидеть Париж и умереть !?
В Вашем случае увидеть как моргает ... и успокоиться !

8pin 15.08.2013 22:05

Вот так оно выглядело бы лучше, на мой взгляд. В смысле защиты от кз, подключения лампочек и т.п.
[url=http://obrazki.elektroda.pl/3559598700_1376593237.gif][img]http://obrazki.elektroda.pl/3559598700_1376593237_thumb.jpg[/img][/url]
заклинание для контроллера (поскольку в Proteus нет модельки для tiny43 то не проверено и возможно сработает не так как надо) -
[code]
/*****************************************************
Chip type : ATtiny43U
AVR Core Clock frequency: 8,000000 MHz
*****************************************************/

#include <tiny43u.h>

#define CPU_FREQ 8000000


#define V_bat_max ((5/5)*(5+10))
#define V_bat_min ((11*255)/V_bat_max)

#define out_1 PORTB.4
#define out_2 PORTB.5
#define ocp_led PORTB.6

unsigned char t_imp, t_pause, n_imp, v_bat;
unsigned char tmr [7];
unsigned char ADC_0, ADC_1, ADC_2, ADC_3;





void ports_init ()
**
DDRA=0b01010000; PORTA=0b10000000;

DDRB=0b11111111; PORTB=0b00000000;
**

void timer_0_init ()
**
TCCR0A |= 1<<WGM01; //ctc
TCCR0B |= 1<<CS02|1<<CS00; //div by 1024
OCR0A = 0x9C; //156 - 50Hz
TIMSK0 |= 1<<OCIE0A; // int on compare match
**

void timer_1_init ()
**
//TCCR1A |= 1<<WGM11|1<<WGM10; //fast PWM, outputs disconnected
//TCCR1B |= 1<<WGM12|1<<CS11 ; //top OCR1A, div by 8
**

void acmp_init ()
**
ACSR |= 1<<ACBG;
**

void adc_init ()
**
ADCSRA |= 1<<ADEN|1<<ADPS2|1<<ADPS1|1<<ADPS0;
ADCSRB |= 1<<ADLAR;
ADCSRA |= 1<< ADSC;
**

interrupt [TIM0_COMPA] void timer0_comp (void)
**
char i;
for (i=0; i<7; i++) {if (tmr [i]) tmr [i]--;**

#asm("wdr")
**

void ADC_read ()
**
static char ADC_select = 1;
if (!ADCSRA.ADSC)
**
switch (ADC_select)
**
case 0: ADMUX = 0; ADC_select = 1; ADC_3 = ADCH; break;
case 1: ADMUX = 1; ADC_select = 2; ADC_0 = ADCH; break;
case 2: ADMUX = 2; ADC_select = 3; ADC_1 = ADCH; break;
case 3: ADMUX = 3; ADC_select = 0; ADC_2 = ADCH; break;
**
ADCSRA |= 1<< ADSC;
**
**

void convert_ADC ()
**
t_imp = ((unsigned int)ADC_0 * 20*5)>>8;
t_pause = ((unsigned int)ADC_1 * 20*5)>>8;
n_imp = ((unsigned int)ADC_2 * 10)>>8;
v_bat = ADC_3;
**

void blinking_led (char a)
**
char i;
for (i=0; i<a;)
**

if (!tmr[5]) tmr[5]= 25; ocp_led = ~ocp_led; i++;

**
ocp_led = 0;
**

void battery_check ()
**
while (v_bat < V_bat_min) {out_1 = 0; out_2 = 0; blinking_led (10);**
**

enum state {all_off, out1_on, out1_off, out2_on, out2_off, all_on** out_state;

void out2performing ()
**
static char n_imp_tmp;

if (out_state == all_off) {out_state = out1_on; tmr[1] = t_imp; n_imp_tmp = n_imp;**
if ((out_state == out1_on)&&(! tmr[1])) {out_state = out1_off; tmr[2] = t_pause;**
if ((out_state == out1_off)&&(! tmr[2])&&(n_imp_tmp)) {out_state = out1_on; tmr[1] = t_imp; n_imp_tmp-- ;**
else if ((!n_imp_tmp)&&(out_state == out1_off)) {out_state = out2_on; n_imp_tmp = n_imp; tmr[1] = t_imp;**
if ((out_state == out2_on)&&(! tmr[1])) {out_state = out2_off; tmr[2] = t_pause;**
if ((out_state == out2_off)&&(! tmr[2])&&(n_imp_tmp)) {out_state = out2_on; tmr[1] = t_imp; n_imp_tmp-- ;**
else if((!n_imp_tmp)&&(out_state == out2_off)) {out_state = out1_on; n_imp_tmp = n_imp; tmr[1] = t_imp;**


switch (out_state)
**
case all_off: out_1 = 0; out_2 = 0; break;
case out1_on: out_1 = 1; out_2 = 0; break;
case out1_off: out_1 = 0; out_2 = 0; break;
case out2_on: out_1 = 0; out_2 = 1; break;
case out2_off: out_1 = 0; out_2 = 0; break;
case all_on: out_1 = 1; out_2 = 1; break;
default: break;
**
**

void ocp ()
**
while (((out_state == out1_on)||(out_state == out2_on))&&(ACSR.ACO)) {out_1 = 0; out_2 = 0; ocp_led = 1; tmr[6] = 255;**;
while (tmr[6]);
ocp_led = 0;
**


void main(void)
**
#pragma optsize-
CLKPR |= 1<<CLKPCE;
CLKPR=0x00; // Crystal Oscillator division factor: 1
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

ports_init ();
acmp_init ();
adc_init ();
timer_0_init ();
timer_1_init ();

#pragma optsize-
#asm("wdr")
WDTCSR=0x18;
WDTCSR |= 1<<WDE|1<<WDP2; // 0,25s
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

#asm("sei")




while (1)
**
ADC_read ();
convert_ADC ();
battery_check ();
out2performing ();
ocp ();
**
**

[/code]

8pin 16.08.2013 19:01

финальная версия. при замыкании стоков пинцетом на корпус срабатывает защита и ключи (на 12А) остаются целы. Проверялось с галогеновой лампочкой 12V 35W (cопротивление холодной лампы в районе 0,5 Ома).
[url=http://obrazki.elektroda.pl/2250402300_1376660058.gif][img]http://obrazki.elektroda.pl/2250402300_1376660058_thumb.jpg[/img][/url][url=http://obrazki.elektroda.pl/8833509500_1376660132.jpg][img]http://obrazki.elektroda.pl/8833509500_1376660132_thumb.jpg[/img][/url][url=http://obrazki.elektroda.pl/4164136600_1376660156.jpg][img]http://obrazki.elektroda.pl/4164136600_1376660156_thumb.jpg[/img][/url]
[code]
/*****************************************************
Chip type : ATtiny43U
AVR Core Clock frequency: 8,000000 MHz
*****************************************************/

#include <tiny43u.h>
#include <delay.h>
#define CPU_FREQ 8000000

#define V_bat_min (((int)11*255)/18)

#define out_1 PORTB.4
#define out_2 PORTB.5
#define ocp_led PORTB.7

unsigned char t_imp, t_pause, n_imp, v_bat;
unsigned char tmr [7];
unsigned char ADC_0, ADC_1, ADC_2, ADC_3;


void ports_init ()
**
DDRA=0b01010000; PORTA=0b10000000;

DDRB=0b11111111; PORTB=0b00000000;
**

void timer_0_init ()
**
TCCR0A |= 1<<WGM01; //ctc
TCCR0B |= 1<<CS02|1<<CS00; //div by 1024
OCR0A = 0x9C; //156 - 50Hz
TIMSK0 |= 1<<OCIE0A; // int on compare match
**

void timer_1_init ()
**
//TCCR1A |= 1<<WGM11|1<<WGM10; //fast PWM, outputs disconnected
//TCCR1B |= 1<<WGM12|1<<CS11 ; //top OCR1A, div by 8
**

void acmp_init ()
**
ACSR |= 1<<ACBG;
**

void adc_init ()
**
ADCSRA |= 1<<ADEN|1<<ADPS2|1<<ADPS1|1<<ADPS0;
ADCSRB |= 1<<ADLAR;
ADCSRA |= 1<< ADSC;
**

interrupt [TIM0_COMPA] void timer0_comp (void)
**
char i;
for (i=0; i<7; i++) {if (tmr [i]) tmr [i]--;**

#asm("wdr")
**

void ADC_read ()
**
static char ADC_select = 1;
static char counter = 64;
static unsigned int v_bat_tmp;

if (!ADCSRA.ADSC)
**
switch (ADC_select)
**
case 0: ADMUX = 0; ADC_select = 1; ADC_3 = ADCH; break;
case 1: ADMUX = 1; ADC_select = 2; ADC_0 = ADCH; break;
case 2: ADMUX = 2; ADC_select = 3; ADC_1 = ADCH; break;
case 3: ADMUX = 3; ADC_select = 0; ADC_2 = ADCH; break;
**

if (counter) {v_bat_tmp += ADC_3; counter--;**
else {v_bat = v_bat_tmp >>6; v_bat_tmp = 0; counter = 64;**
ADCSRA |= 1<< ADSC;
**
**

void convert_ADC ()
**
t_imp = ((unsigned int)ADC_0 * 2*25)>>8;
t_pause = ((unsigned int)ADC_1 * 2*25)>>8;
n_imp = ((unsigned int)ADC_2 * 10)>>8;
**

void blinking_led ()
**
ocp_led = ~ocp_led; delay_ms (400) ;
**

void battery_check ()
**
while (v_bat < V_bat_min) {out_1 = 0; out_2 = 0; blinking_led (); ADC_read (); convert_ADC ();**
ocp_led = 0;
**

enum state {all_off, out1_on, out1_off, out2_on, out2_off, all_on** out_state;

void out2performing ()
**
static char n_imp_tmp;

if (out_state == all_off) {out_state = out1_on; tmr[1] = t_imp; tmr[0] = 5; n_imp_tmp = n_imp;**
if ((out_state == out1_on)&&(! tmr[1])) {out_state = out1_off; tmr[2] = t_pause;**
if ((out_state == out1_off)&&(! tmr[2])&&(n_imp_tmp)) {out_state = out1_on; tmr[1] = t_imp; tmr[0] = 5; n_imp_tmp-- ;**
else if ((!n_imp_tmp)&&(out_state == out1_off)) {out_state = out2_on; n_imp_tmp = n_imp; tmr[0] = 5; tmr[1] = t_imp;**
if ((out_state == out2_on)&&(! tmr[1])) {out_state = out2_off; tmr[2] = t_pause;**
if ((out_state == out2_off)&&(! tmr[2])&&(n_imp_tmp)) {out_state = out2_on; tmr[1] = t_imp; tmr[0] = 5; n_imp_tmp-- ;**
else if((!n_imp_tmp)&&(out_state == out2_off)) {out_state = out1_on; n_imp_tmp = n_imp; tmr[0] = 5; tmr[1] = t_imp;**


switch (out_state)
**
case all_off: out_1 = 0; out_2 = 0; break;
case out1_on: out_1 = 1; out_2 = 0; break;
case out1_off: out_1 = 0; out_2 = 0; break;
case out2_on: out_1 = 0; out_2 = 1; break;
case out2_off: out_1 = 0; out_2 = 0; break;
case all_on: out_1 = 1; out_2 = 1; break;
default: break;
**
**

void ocp ()
**
while (((out_state == out1_on)||(out_state == out2_on))&&(ACSR.ACO)&&(!tmr[0])) {out_1 = 0; out_2 = 0; ocp_led = 1; tmr[6] = 255; out_state = all_off;**;
while (tmr[6]);
ocp_led = 0;
**


void main(void)
**
#pragma optsize-
CLKPR |= 1<<CLKPCE;
CLKPR=0x00; // Crystal Oscillator division factor: 1
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

ports_init ();
acmp_init ();
adc_init ();
timer_0_init ();
timer_1_init ();

#pragma optsize-
#asm("wdr")
WDTCSR=0x18;
WDTCSR |= 1<<WDE|1<<WDP2; // 0,25s
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

#asm("sei")

out_state = all_off;
t_imp=25, t_pause=25, n_imp=5, v_bat=200;

while (1)
**
ADC_read ();
convert_ADC ();
battery_check ();
out2performing ();
ocp ();
**
**
[/code]

XRay 20.08.2013 23:59

16-8pin> А зачем супрессор на такую большую напругу?

8pin 21.08.2013 12:54

Мало ли что в автомобильной электросхеме может гулять.
Сапрессор стоит копейки.

8pin 21.08.2013 13:02

В смысле напряжение когда он открывается всё же меньше чем предельное для ключей (55V для IRF4905). Там ещё в схеме предохранитель надо дорисовать, ампер на 40. И использована цепочка резистор - стабилитрон вместо интегрального стабилизатора в цепи питания мк по той же причине, для повышения надёжности в условиях всплесков по питанию.
Всё таки на дискретной логике получается дубовее и это плюс для применения на авто.

XRay 21.08.2013 13:06

Ну так и ставить на 16-18 вольт, а то если будет 47 то ни чего не выживет уже. К примеру на PA3 будет сильно выше VCC...

8pin 21.08.2013 13:08

а вот так, на мой взгляд, могла бы выглядеть схема на ИЕ8
[url=http://obrazki.elektroda.pl/8851609200_1377079632.gif][img]http://obrazki.elektroda.pl/8851609200_1377079632_thumb.jpg[/img][/url]

8pin 21.08.2013 13:10

в смысле, не выживет? при продолжительном повышении конечно уже и штатное оборудование начнёт дохнуть, а кратковременный спайк эта схема должна пережить.

XRay 21.08.2013 13:22

Хз должна не должна, сколько много и долго проц переживет по PA3 превышение на 20 вольт? некоторые даже на 0,5 вольта не могут....

8pin 21.08.2013 13:45

у него же на выводах питания стабилитрон. можно конечно и его подстраховать, но по идее и так должно работать. или я чего то не понимаю?

XRay 21.08.2013 13:57

Я про другое...про то что нельзя подавать напряжение по входам больше, чем питание кристалла (VCC). А тут VCC 5 вольт, а по ноге PA3 при супрессоре на 47 вольт...может и 20 быть...

8pin 21.08.2013 14:16

понятно. расчёт был на то что при указанных сопротивлениях в измерительных цепях параметров внутренних диодов мк хватит для отвода излишков. или можно конечно внешние стабилитроны приставить.

XRay 21.08.2013 14:34

не хватит, и смысла нет в супрессоре на 47 вольт и предохранителе на 40а. На 16 вольт и предохр. по минимуму, да и кмоп типа 561 больше 15 вольт не любит совсем. Да и при четких 15 вольт питания горит через пару лет... И в нормальной машине нет таких всплесков...я не нашел...

8pin 21.08.2013 14:40

предохранитель на случай спекания сапрессора, а через резистор 10кОм при напряжении 40V протечёт 4мА, с учётом того что ожидаемая длительность импульса - микросекунды, я думаю должно хватить (с ходу не нашёл в описании на мк параметров его защитных диодов).

8pin 21.08.2013 15:24

а, нашёл - "maximum allowed AVR clamp diode current is just 1 mA"

XRay 21.08.2013 16:00

ну хз, "думаю, вроде, должно" я б так делать не стал...не надежно както. Надежней или стабилитрон добавить или супрессор другой

8pin 21.08.2013 16:07

cогласен, однако с учётом того что это устройство реально нигде применяться не будет, можно оставить как есть.

XRay 21.08.2013 21:18

))) а для чего все страдания с разработкой тогда?

fanatnascar 21.08.2013 22:57

32-XRay >ученье - свет

8pin 22.08.2013 12:03

Кстати, вот этот цифровой вольтметр отлично работает без какой либо дополнительной защиты входов, за исключением разумеется внутренних защитных диодов мк и делителей напряжения на выводах ADC - при измеряемом напряжении до 25V. Ток через диоды впрочем меньше миллиампера, но зато постоянный а не импульсный.
[url=http://obrazki.elektroda.pl/2624674300_1377161258.gif][img]http://obrazki.elektroda.pl/2624674300_1377161258_thumb.jpg[/img][/url][url=http://obrazki.elektroda.pl/4833263400_1377161338.jpg][img]http://obrazki.elektroda.pl/4833263400_1377161338_thumb.jpg[/img][/url]

8pin 22.08.2013 16:20

хотя по здравому размышлению входам в схеме вольтметра ничего и не угрожает.

Sok 24.08.2013 06:49

Spin спасибо за то что дал мой номер.Уже доделываю стробоскоп но не этот, а на PICe ([url]http://схема-авто.рф/%D1%81%D1%82%D1%80%D0%BE%D0%B1%D0%BE%D1%81%D0%BA%D0%BE%D0%BF-%D0%B4%D0%BB%D1%8F-%D0%B0%D0%B2%D1%82%D0%BE-%D0%BF%D0%BE%D0%B4-%D1%80%D0%B5%D1%88%D0%B5%D1%82%D0%BA%D1%83-%D1%80%D0%B0%D0%B4%D0%B8%D0%B0.html[/url]) сегодня отдаю заказчику.


Текущее время: 18:13. Часовой пояс GMT +3.