Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

4/6-канален генератор на единични сигнали
http://mcu-bg.com/mcu_site/viewtopic.php?f=4&t=14681
Страница 1 от 2

Автор:  Eddie [ Сря Юли 13, 2016 7:07 pm ]
Заглавие:  4/6-канален генератор на единични сигнали

Здравейте момци,
от известно време се чудя как да си направя 4-канален генератор на единични сигнали с цел да си тествам инжекторите на разни трошки.
Обаче да е с логики, а не с микропроцесор.

Идеята е като натисна бутон за старт, с 4 мосфета да управлявам инжектори да пръскат с единичен сигнал, примерно за по 1мс в порядък 1234 и после да млъкнат.
Прикачени файлове:
Inj tester 500.png
Inj tester 500.png [ 15.98 KiB | Прегледано 2550 пъти ]

Периода на единичния сигнал обаче плавно да може да се управлява и на 4-те едновременно.
Паузата между сигналите пък може да е равна на периода на сигналите - просто да не се застъпват не за друго.

Първо го мислих с клок + 4017 + 4 чакащи мултивибратора, но не искам да слагам мултивибратори, защото няма да мога да постигна еднакви времена на всички канали. А и искам да въртя само 1 потенциометър.

Няма ли как да стане с клок + брояч + един чакащ мултивибратор, сигнала от който да ходи в още 1 брояч с логическо И, който вече да разпределя импулсите по каналите?
Така всеки канал ще получи импулс, много еднакъв с другите канали (понеже ще се изработва от един и същи ЧМ).

Дотук ставаше дума за единични сигнали 1234 и после системата спира.

И продължението на идеята: може ли с галетен превключвател да му се задава да брои до 5, 10, 20, 50 единични импулса на канал, примерно 1234-1234-.....1234 и да спре? Целта е да се измери във всяка чашка колко грама гориво е пуснал всеки инжектор.

Ще се радвам ако помогнете с идеи как да стане с логики, поздрави.

Автор:  dvrachkov [ Сря Юли 13, 2016 7:14 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

С микроконтролер става с 5 реда код... Не знам защо се мъчиш. Едно ардуино ще ти свърши работа. А ако си по - навътре в нещата, си програмирай един пик някакъв или атмега, кортекс... или какъвто си избереш микроконтролер... Наистина с цифрови схеми може да стане, но ще бъде доста обемна схема. Доста обемна, се има предвид чаршав. :D :D :D

Автор:  Eddie [ Сря Юли 13, 2016 7:17 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

За съжаление не съм програмист и не мога да си ги напиша 5-те реда, признавам си... ако някой се навие да помогне ще съм благодарен.
Или пък ако стане с логики още по-добре и лесно за мен, не е проблем обема на схемата. Че от 3 дена го мисля и не мога да се сетя как точно да стане да редува каналите 1234 след чакащия мултивибратор, но да запазва и продължителността на периода му.

Автор:  dvrachkov [ Сря Юли 13, 2016 7:39 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

За едни пари, все някой ще се навие... Иначе чисто теоретично, е хубаво да направиш една време - диаграма и да свържеш примерна схема. Защото от описанието е ясно, ама не съвсем.

Поздрави !

Автор:  Eddie [ Сря Юли 13, 2016 8:12 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Докъде стигнах:
- клок генератор коеф. на запълване 90%
- 4017 който редува изходите си 1234 и после ги повтаря отначало
- чакащ мултивибратор с потенциометър за регулиране на широчината на импулса, който взима сигнал директно от клока
- многоканално логическо "И"
- 4 драйвъра за мосфети

На всеки канал на логическото И, на всеки негов вход ще има следните 2 сигнала:
- от конкретен изход на 4017 (широк сигнал със запълване 90%)
- от чакащия мултивибратор (леко по-тесен сигнал)

Както се вижда на схемата, периода на 1-цата в изхода на И-то ще зависи от време застъпването на 1-ците на входа му.
Тук основният проблем е, че ако периода на сигнала, идващ от някой изход на 4017 е по-кратък от периода на чакащия мултивибратор, И-то ще се лимитира до по-краткия сигнал, в случая този от 4017.

Така че тази концепция не е най-добрата, трябва да се изчака сигнала от ЧМ да свърши и тогава да обърне изхода си в 0.
Някакви идеи?

Прикачени файлове:
logical AND.GIF
logical AND.GIF [ 2.92 KiB | Прегледано 2522 пъти ]

Автор:  ike [ Сря Юли 13, 2016 8:15 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Ардуино:

Код:

int ledPin12 = 12;                 // LED connected to digital pin 12
int ledPin11 = 11;                 // LED connected to digital pin 11
int ledPin10 = 10;                 // LED connected to digital pin 10
int ledPin9 = 9;                 // LED connected to digital pin 9



void setup()
{
  pinMode(ledPin12, OUTPUT);      // sets the digital pin as output
  pinMode(ledPin11, OUTPUT);      // sets the digital pin as output
  pinMode(ledPin10, OUTPUT);      // sets the digital pin as output
  pinMode(ledPin9, OUTPUT);      // sets the digital pin as output
}

void loop()
{
  digitalWrite(ledPin12, HIGH);   // sets the LED on
  delay(10);                  // waits for a second
  digitalWrite(ledPin12, LOW);    // sets the LED off
  delay(10);                  // waits for a second

  digitalWrite(ledPin11, HIGH);   // sets the LED on
  delay(10);                  // waits for a second
  digitalWrite(ledPin11, LOW);    // sets the LED off
  delay(10);                  // waits for a second

  digitalWrite(ledPin10, HIGH);   // sets the LED on
  delay(10);                  // waits for a second
  digitalWrite(ledPin10, LOW);    // sets the LED off
  delay(10);                  // waits for a second

  digitalWrite(ledPin9, HIGH);   // sets the LED on
  delay(10);                  // waits for a second
  digitalWrite(ledPin9, LOW);    // sets the LED off
  delay(10);                  // waits for a second

  delay(100);

}

Източник: https://www.arduino.cc/en/Reference/DigitalWrite
Ако не ползваш ардуино може да стане и на 5 реда.

Автор:  Eddie [ Сря Юли 13, 2016 8:20 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Опс, докато писах колегата Ike направо е написал кода.
Аз нямам ардуино-та, но пък имам чипове PIC16F616, 16F628, 625 и др.
Мога да си направя платката за няколко часа по фотометод (имам си всичко за целта) имам програматор и т.н.

Кой процесор да изберем за целта и по каква схема. Ще я начертая и кача в поста, само ми обясни кой крак къде ще вържем...

Автор:  dvrachkov [ Сря Юли 13, 2016 8:27 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Чудесно, колегата го е написал много хубаво. Като ги имаш тия микроконтролери, дай примерна схема с един от тях. Свържи някаква схема на някакъв кад продукт за електроника и ни покажи, каква иде имаш. Принципно всяко i/o pin-че ти върши работа. С други думи - 4 изхода и един вход + кварц (може и вътрешен, но сложи външен), стабилизирано захранване на 5 или 3.3 волта, активити лед, програматор, оразмерени транзистори. Толкова :)

Чакаме схемата. :D

Автор:  Eddie [ Сря Юли 13, 2016 9:16 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Примерно така?
Нека да са 6 канала...

Прикачени файлове:
inj_test_1.png
inj_test_1.png [ 94.86 KiB | Прегледано 2507 пъти ]

Автор:  TheHungry [ Сря Юли 13, 2016 10:16 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Потенциометър -> Генератор -> Брояч -> Дешифратор -> изходи 1 , 3 ,5 ,7 осмия изход спира генератора и чака бутон .

Автор:  itso.t [ Сря Юли 13, 2016 10:49 pm ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Eddie написа:
...Така че тази концепция не е най-добрата, трябва да се изчака сигнала от ЧМ да свърши и тогава да обърне изхода си в 0.
Някакви идеи?

Да видим дали днес ми работи творческата мисъл или бачка само тая за тъп идеи...

Обърни последователността - генераторът дава такт на чакащия. Броячът е свързан на изхода му. Ще трябва да сложиш и логиката която си описал.
Така изходните импулси ще са с продължителността на чакащия, ще е еднаква за всички изходи и няма да се влияе от проблема описан по-нагоре.
Може би. Ако тая идея няма грандиозен бъг, и изобщо бачка... :D

Предполагам се подразбира че периода на генератора трябва да е по-голям от максималния който ще задаваш с чакащия.

Автор:  Eddie [ Чет Юли 14, 2016 12:22 am ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Ето какво се получава, на симулацията обаче има паразитни превключвания.
Това е, защото зеленият и червеният вход на втората картинка са едновремено в с-е 1, нищо че единия спада, а другия нараства.
Как да избегнем тези превключвания е въпросът...

Прикачени файлове:
schem1.png
schem1.png [ 73.54 KiB | Прегледано 2456 пъти ]
scope2.png
scope2.png [ 15.43 KiB | Прегледано 2456 пъти ]
Scope1.png
Scope1.png [ 16.87 KiB | Прегледано 2456 пъти ]

Автор:  itso.t [ Чет Юли 14, 2016 12:34 am ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Свържи мултивибратора в "не рестартиращ се" режим - извод 4 към 7.

Автор:  Eddie [ Чет Юли 14, 2016 12:38 am ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Свързах го и така май стана.
Само че за вход вече ползвам пин Б (5).
Обаче има недостатък: не изменя ширината на импулса ако изменям резистора в ЧМ.
Ако пък сложа синхронизацията на И-то към изхода на ЧМ, пак се появяват иглите.

Прикачени файлове:
schem2.png
schem2.png [ 67.84 KiB | Прегледано 2454 пъти ]
scope3.png
scope3.png [ 15.13 KiB | Прегледано 2455 пъти ]

Автор:  itso.t [ Чет Юли 14, 2016 1:07 am ]
Заглавие:  Re: 4/6-канален генератор на единични сигнали

Сигналът който си кръстил "синхронизиращ", трябва да е от изхода на мултивибратора. Ако е от входа му, той става излишен.
Промяната, от рестартиращ и не рестартиращ се мултивибратор има друга цел.
В първият случай, ако периода между входните импулси е по-голям от тоя на мултивибратора, изходът му ще е в постоянна единица докато има входен сигнал + времето което му е зададено.
Във втория случай, ще генерира зададеният му период, от всеки входен импулс, постъпил когато не е сработил.

Тия пикове приличат на някаква глупост със закъснения на сигналите.

Страница 1 от 2 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/