Автор Тема: малко помощ за една аналогова схемичка  (Прочетена 18424 пъти)

svetljjjo

  • Гост
  • Trade Count: (0)
Слагам темата в цифрово щото тя по същество е за взимане на дсс сигнал от релсите

Експереминтирам с едно декодерче което ми попадна случайно от един японски сайт
http://desktopstation.net/wiki/doku.php/desktop_station_decoder_dsdec_r2
Погледнете тая схема специално частта за взимане на дсс сигнала
понеже аз с аналоговата част съм малко скаран

специално частта на  R1 R2 и D2  където сваля дсс сигнала
Интересува ме според вас каква ще е формата само едната половина на сигнала ли ще бъде или двете
Понеже качих скицата но не реагира на сигнала не чете дсс
само да кажа че аз не го правя по тая схема аз използвам тази за взимане на дсс


По тази схема се взима само половината дсс сигнал и се чете
с нея съм нямал проблеми на други проекти е сработвала
включително и на трите библиотеки за дсс на ардуино само тук не ми сработи
а пък не ми се прави схемата от сайта да пробвам с оригинала щото ардуиното трябва да е вързано с компа
че да мога да ползвам сериал монитора да гледам как реагира какво прави пък тази оригиналната схема вижте каква е не е отделена галванично от релсите и малко ме е шубе да е тествам

mitko0888

  • Trade Count: (35)
  • Hero Member
  • *****
  • Публикации: 2385
  • Рейтинг: 970
  • H0, еп. I, II, III, IV, София
    • Снимките ми ...
Re: малко помощ за една аналогова схемичка
« Отговор #1 -: 26 Февруари 2018, 08:44:18 »
Ако вземеш и двете половини на ДЦЦ сигнала ще получиш една права линия,  която няма да ти върши работа за нищо друго, освен за захранване.
Твоята схема, естествено, взима само едната. половина.

Mixy

  • КЖМ - България
  • Trade Count: (3)
  • Hero Member
  • *****
  • Публикации: 1538
  • Рейтинг: 384
    • SCARM - българският софтуер за дизайн на релсови планове и жп макети
Re: малко помощ за една аналогова схемичка
« Отговор #2 -: 26 Февруари 2018, 09:03:38 »
Втората схема (за взимане на DCC сигнала и галванично разделяне) ми изглежа съвсем наред. Предава се само единия полупериод или половината сигнал, както го наричаш ти. Ако нещо не сработва, провери си елементите, може някой да е изгорял. Провери си също и следваща схема след тази, може там да има грешка или пък ако е декодер, той може да очаква да си получи пълния сигнал на входа.

pach

  • Trade Count: (42)
  • Hero Member
  • *****
  • Публикации: 12257
  • Рейтинг: 1308
  • ТТ & Н0; DR & BDZ;ep.I-III(~VI)&selfmade
    • За моделизма
Re: малко помощ за една аналогова схемичка
« Отговор #3 -: 26 Февруари 2018, 11:46:09 »
Те японците са ти го означили на схемата.
Сигнала "DCC_Pulse" трябва да ти е т.н. "пул-Ъп".
  Означението е на pin 4 на Атмега-та - "PULLUP" е точно за това. Твоят оптрон струва ми се, че не го прави точно така.

Освен в схемата за това е написано и в разясненията и.
Цитат
Допълнение за стойността на съпротивлението:

R2 може да бъде 100k Ohm, което е същото като R1. (Работата е непроменена)
R1 270k R2 ще бъде 100k, ще бъде за 3.3V диск Arduino.

Причината за избора на 100 kOhm или повече се дължи на ниската VF на 1N4148 (ниско IF = 0,1 mA, VF = 0,4 V или по-малко). При използване на устойчивост на по-малко от 100kohm (например 10k и т.н.), рискът от намаляване на общия 5.5V от живота се прилага към входния щифт на ATMEGA VF издига на 1N4148 на D2 случи. Промяна на диод с ниска VF. Въпреки това цената на диода се повишава. 

На схемата също ти е указано - диода между захранването и входа на Ардуиното трябва да има VF<0.5V!!! Тоест търсиш
определено ниво на сигнала на Ардуиното.
Струва ми се да трябва да " изчистиш" този проблем в изхода на
оптрона ти. Ардуиното ( и японската му библиотека по случая)
сработва при горните условия за четене на DCC сигнал.

Прочети още един път указанията на японеца внимателно.
 ;D

ПП. Ако си включиш осцилоскопа там, веднага ще видиш какво не му достига на чипа... ;D
« Последна редакция: 26 Февруари 2018, 11:54:06 от pach »

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #4 -: 26 Февруари 2018, 16:10:39 »
PULLUP до колкото мойте знания стигат е включването на вътрешното съпротивление всеки пин има тея три състояния
като вход като изход и това пулуп което включва едно мегаомово съпротивление и все едно изолираш пина от схемата.
За това и нищо не разбрах от обясненията в сайта като изключим и факта че от японски на български превода е
меко казано боза .
Аз така си го обяснявам това PULLUP  ако съм в грешка поправи ме

Иначе осцилоскоп включвах сигнала от мойта схема с опртрона си е перфектен даже го прекарах и през един елемент 7400 та стана направо супер и ардуиното по принцип си разпознава ТТЛ нива за 0 напрежение под 0,5в и за 1 над 2,5в къвто си е стандарта от време оно а и с тази схема с оптрона съм тествал други проекти включително и с библиотеката която ползват те
и си работи както си требва
Тяхната схема не съм правил намерих части но малко ме е шубе да е тествам щото не е раздерена галванично и да подам от
централата и едновремено да е включено и в ЮСБ порта ме е страх въпреки че е явно са я тествали така и сигурно няма да има никви проблеми
за това ви попитах кво мислите за тяхната схема да не би сигнала да е с други нива или да е де да знам нещо различно от стандартното
гледам че са ровили в програмата директно в регистрите за да накарат PWM да стане на 10kHz щото ардуиното има
хардуерни PWM на пин 3 е на 500Hz а на останалите 5 8 9 10 11 мисля бяха е на 900Hz
а като прецакаш таймерите от регистрите за да смениш PWM честотата прецакваш всички таймери и товаа дава отражение
на работата на целия чип

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #5 -: 26 Февруари 2018, 16:21:33 »
Off-Topic:
Ако вземеш и двете половини на ДЦЦ сигнала ще получиш една права линия,  която няма да ти върши работа за нищо друго, освен за захранване.
Твоята схема, естествено, взима само едната. половина.

Аз мисля че няма да е права линия въпреки че разтоянието между импулсите ще е нищожно
щото сигнала пада от 15в до 0 и след това качва от 0 до 15 това изисква време сигналите не се застъпват щото от един и същ источник идват мисля че ще се получат пак импулси не съм го пробвал де така на изуст го говоря ама може да опитам да видя след един грец кво ще покаже осцилоскопа

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #6 -: 26 Февруари 2018, 18:10:03 »
Направих го по тяхната схема всичко изправител стабилизатор и веригата за сваляне на дсс сигнала
сложих го на осцилоскопа да видя какво изкарва на изхода за дсс и същото каквото и с оптрона
никва разлика некви миливолти разминаване нищо притеснително
За съжаление и по тяхната схема не захапа програмата и не чете дсс командите
което ще рече че има проблем със софтуера или нещо трябва да се направи да се допише или да се промени
което аз не съм разбрал . Странното е че те това го продават би трябвало да работи от раз по дяволите
освен да има проблем че те ползват ардуино мини а аз го пробвам с уно ама това не трябва да има никъв проблем.
Аз ли нищо не разбирам от това ардуино или те нещо не са направили като хората много странно
много ме дразни така нещо като не мога да го подкарам  ;D

pach

  • Trade Count: (42)
  • Hero Member
  • *****
  • Публикации: 12257
  • Рейтинг: 1308
  • ТТ & Н0; DR & BDZ;ep.I-III(~VI)&selfmade
    • За моделизма
Re: малко помощ за една аналогова схемичка
« Отговор #7 -: 26 Февруари 2018, 21:43:35 »
Цитат на: svetljjjo link=topic=5065.msg110850#msg110850 date=1519654239
PULLUP до колкото мойте знания стигат е включването на вътрешното съпротивление всеки пин има тея три състояния
като вход като изход и това пулуп което включва едно мегаомово съпротивление и все едно изолираш пина от схемата.
За това и нищо не разбрах от обясненията в сайта като изключим и факта че от японски на български превода е
меко казано боза .
Аз така си го обяснявам това PULLUP  ако съм в грешка поправи ме
...

Нещо съвсем си се ошашавил...става въпрос за външно съпротивление.
Ако говорим за вътрешни мегаоми, те рядко са определящи - тоест брой ги за отворена верига...

Pull Up resistor
Тъй нареченият издърпващ резистор е резистор, свързан между сигналният проводник и захранването (Vcc) или между сигналния проводник и маса (GND). Необходимo е подходящо съпротивление, за да се гарантира потенциал на логическия вход, към който е свързан сигнала. Трябва висок потенциал (когато именно е pull up) или нисък такъв (в случай на pull down) на входното ниво от следващия блок.

 Свързаният логически изход от предходния блок е в състояние с висок импеданс когато ключовият елемент е отворен спрямо приложения логически изход. Ключовият елемент може да бъде полеви или биполярен транзистор. Или
тъй наречената схема "отворен колектор" ( за биполярни).

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

 Ако се генерира сигнал за отваряне на елемент от ключова позиция,  Pullup резистора трябва да се подбере, за да
 се покачва по-стръмно фронта на сигнала. Когато се ползва pull down резистори, контролираме спада по-стръмно за тила на сигнала.

 Ако издърпнаме към захранване, тогава трябва да вземем предвид времето за нарастване на сигнала. Ако тегленето е към  масата,  времето на сигнала към спад. Времето на срив или покачване на фронта е времето между отварянето на ключа и достигането на праговия сигнал за напрежение. Праговото напрежение е напрежението, при което логическият вход определя промяна в логическото състояние. Времето за понижение или
изкачване е продукт на съпротивлението, капацитета и коефициента, който се взема под внимание за праговото напрежение. Тези параметри оказват влияние и върху формата на сигнала.

 При проектирането на логическите схеми е необходимо да се изчисли съпротивлението на издърпващия резистор, докато входният капацитет и праговото напрежение са известни, тоест трябва чрез него (резистора) да удовлетворим изискванията на входа, към който подаваме сигнала, особено когато той идва от схема "отворен колектор".

Често, особено ако предходния подаващ сигнала блок е с отворен колектор, се прави делител на напрежение, за да се гарантира стръмността и правилното предаване на формата на сигнала (без "моарета", "мършляци") ...тоест без изкривявания.

Най-добре си включи осцилоскопа в 4-ти пин и виж какъв сигнал ти стига до него. Както формата, така и нивата му дали удовлетворяват изискванията за вход от Атмега-та. При такива сигнали, разбира се има значение и стръмността на сигнала.

Впрочем не би трябвало да те безпокои, че нямаш галванично разделяне.
Първо това е проверено в практиката и няма проблеми, освен ако на объркаш схемата или стойността на елементите.
Второ, така или иначе дешифратора трябва да се захрани от DCC ,
за да има мощност към двигателя - тоест ако стане някакъв гаф с тази част от схемата, пак "ще се добереш" до щети по Атмега-та.
 :yes: ;D

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #8 -: 26 Февруари 2018, 22:23:28 »
Включих осцилоскопа нали писах в предния пост няма разлика в сигналите такива са както и от оптрона и са с ТТЛ ниво
каквото трябва и да си бъде .

И понеже много ме ядосва когато нещо е очевидно че трябва да работи а не ще за зачетох по надълбоко из файловете на
библиотеката и се оказа че японците са ползвали стара версия явно сайта е умрял още преди години
аз имам инсталирана версия 1,4 а те ползват версия 1,2
и понеже няма как да имаш инсталирани две версий на една и съща библиотека ардуиното е обновява автоматично
инсталирах на друг комп ардуино иде и стара версия на нмрадсс тоест тази от техния сайт и работите станаха.

Вече бачка сега остава да видя какви са разликите между версийте и да се пробвам да пренапиша там където
нещата се разминават щото явно не само бъгове са оправяли ами са и променили нещо много важно в логиката
и начина на работа на библиотеката  ;D

Направи ми на мен впечатление че променям адреса на декодера а то продалжава да си стои на 3
ама не ми дойде на ум че може да са променили из основи логиката на библиотеката
до сега не ми се бе случвало да се скапе някоя скица заради нова версия на библиотека  :lol:
« Последна редакция: 26 Февруари 2018, 22:30:16 от svetljjjo »

pach

  • Trade Count: (42)
  • Hero Member
  • *****
  • Публикации: 12257
  • Рейтинг: 1308
  • ТТ & Н0; DR & BDZ;ep.I-III(~VI)&selfmade
    • За моделизма
Re: малко помощ за една аналогова схемичка
« Отговор #9 -: 26 Февруари 2018, 22:41:45 »
Цитат на: svetljjjo link=topic=5065.msg110856#msg110856 date=1519676608
Включих осцилоскопа нали писах в предния пост няма разлика в сигналите такива са както и от оптрона и са с ТТЛ ниво
каквото трябва и да си бъде .


Не става въпрос само за нива, но и форма, както и стръмността по фронт и тил на сигнала. Както и да е...
Важното, че си хванал какво не ти е у ред и си го оправил.

Казваш, че библиотеката авто магично се обновява.
А ако е в друга директория или с друго име?
 :yes: ;D

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #10 -: 27 Февруари 2018, 02:18:35 »
Off-Topic:
Не става въпрос само за нива, но и форма, както и стръмността по фронт и тил на сигнала.
Така де като казвам ТТЛ нива имам предвид и за формата на сигнала
има леки кривинки в долния край към 0-та ама то това го дава и през оптрона а и на оригинални декодери съм го гледал и там дава малки кривинки ама това е безпроблемно .
Даже и централите не изкарват перфектен сигнал аз имам 4 различни на всичките съм го гледал и те изкарват малко заболяне в горния и долния край . То разбирасе зависи как си нагласил тригера на осцилоскопа и кви са му възможностите
Моя е 30MHz  за компютър DSO2100 и като го дам на най малко време се вижда че и фронтовете не са отсечени ама това влиза в предвидените толеранси на ТТЛ стандарта


Off-Topic:
Казваш, че библиотеката авто магично се обновява.
А ако е в друга директория или с друго име?

Библиотеките на ардуино се добавят в самата среда има стандарт какви файлове трябва да съдържат и като ги добавиш те отиват само в една директория  либрари . И като добавиш в скицата някоя библиотека то е търси само там . Не съм пробвал да добавя
към скицата файловете на библиотека като прости файлове има и възможност да се добавят към скицата каквито и да е външни файлове .
дефакто командата  #include <файл> означава точно вземи цялото съдържание на файла и го добави .
Те библиотеките не са компилирани обикновени файлове са си със стандартен С код само че са написани обектно .
Ще пробвам да видя ако добавя двата файла NmraDcc.h и  NmraDcc.срр които са самата библиотека дали ще
компилира тях или ще си търси пак неговата си библиотека щото
командата е една и съща #include <NmraDcc.h>

Иначе има мениджър на библиотеките от него можеш да се върнеш на която версия искаш аз лично предпочитам да не го правя
щото има причина да се пускат нови верси и това 99% от случайте са открити бъгове а библиотеките на са малко
мойте вече надхвърлят 100 и като забравя после се чудя като сега що нещо което трябва да работи не ще  ;D
« Последна редакция: 27 Февруари 2018, 02:28:18 от svetljjjo »

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #11 -: 06 Март 2018, 14:31:41 »
Имам едно въпросче за ДСС функцийте на локомотива респективно на декодера.

Гледам че са групирани на групички
като в първа група са 5 а в останалите са по 4 както следва
FN_0_4:   //Function Group 1 F0 F4 F3 F2 F1
FN_5_8:   //Function Group 1
и така нататък до FN_21_28:
и дефакт излизат общо 29 функций
 F0 това е включване на фарове (светлини) 
обаче за другите има ли някаде описано като стандарт за всяка една функция за какво служи или кой каквото си върже
за да видя включено и изключено кви сигнали да са с ТТЛ нива или и трябват примерно некви буфери за по сериозна консумация

Понеже вече съм на финалната права с нещо що годе смислено като декодер с ардуино изтествах няколко моторчета
и ми трябва само да допиша кода за тея функций щото автора на оригинала ги е оставил за домашно на който се хване да му ползва скрипта .
Ако има някъде стандарт описан както е за CV примерно да видя коя за какво е и дефакто от колко реално има нужда локомотива
щото да ме убиеш за 28 функций не мога да измисля приложение сещам се само за 2 най много 3  :lol:

mitko0888

  • Trade Count: (35)
  • Hero Member
  • *****
  • Публикации: 2385
  • Рейтинг: 970
  • H0, еп. I, II, III, IV, София
    • Снимките ми ...
Re: малко помощ за една аналогова схемичка
« Отговор #12 -: 06 Март 2018, 14:57:46 »
"NMRA DCC standard doesn't define functions"

Светльо, в българския език няма дума в множествено число, която да завършва на "й". (надявам се не се сърдиш много)

Ако ще правиш декодер, не знам дали да не прочетеш някои стандарти, напр. този. А функции може да си измислиш много: маневра, инерция, гасене на лампи отпред / отзад, кабина, закачалка, авт. стоп и още много .... (звуците не ги броим).
« Последна редакция: 06 Март 2018, 15:02:38 от mitko0888 »

svetljjjo

  • Гост
  • Trade Count: (0)
Re: малко помощ за една аналогова схемичка
« Отговор #13 -: 06 Март 2018, 15:06:52 »
Off-Topic:
"NMRA DCC standard doesn't define functions"

Светльо, в българския език няма дума в множествено число, която да завършва на "й". (надявам се не се сърдиш много)

Ако ще правиш декодер, не знам дали да не прочетеш някои стандарти, напр. този.

за "й" си прав моя грешка

чел съм нмрадсс стандарта аз почти съм готов с тоя декодер трябваха ми само за фукцийте нещата да ги допиша

"NMRA DCC standard doesn't define functions"
това не знам от къде си го копирал ама аз намерих след доста ровене понеже знаете в гугъл да намериш нещо трябва ясно да го опишеш иначе ще получиш няколко милиона резултата   :haha:

та след доста ровене оказва се има стандарт за функцийте поне за първите 12

http://www.broadway-limited.com/support/manuals/quantum%20q1%20dcc%20reference%20manual%20ver.%203.1.pdf

pach

  • Trade Count: (42)
  • Hero Member
  • *****
  • Публикации: 12257
  • Рейтинг: 1308
  • ТТ & Н0; DR & BDZ;ep.I-III(~VI)&selfmade
    • За моделизма
Re: малко помощ за една аналогова схемичка
« Отговор #14 -: 06 Март 2018, 15:42:04 »
Функционални изходи
За всеки изход на функция от дешифратора, можеш да
определиш коя DCC функция се използва за включване или
изключване на функционалните изходи.
Изходите А, В и С (тоест първите три) могат да бъдат
разпределени на функцийте от F0 и F1 (в зависимост от посоката),
а функции F2 до F28 се разпределят по желание.
 Те се разпределя чрез СV 33 до 47 и съответно през CV 129 до 144.
Първите четири (или осем) функции имат обикновенно транзистори изходи за до 100(300 mA).
Тези които пряко контролират моторчета са обикновенно през
мосфет чипмета за до 0.75 (1.0А). А тези които обикновенно управляват звуковите ефекти са си вътрешнофирмено решени
още на ниво процесорче.
Повечето от функцийте са именно за звукови ефекти,
като те биват според решението на фирмата производител,
но обикновенно и те се придържат към общоустановен стандарт.
Например за дизелови локомотиви ( различно е за парни и електро):
- F0 фарове
- F1 пуск/стоп звук
- F2 къса тромба
- F3 свирка железничарска
- F4 пуск/ стоп осветление кабина 1
- F5 пуск/стоп осветление кабина 2
- F6 пуск/ стоп маневрена скорост - дели скоростта на половина от текущата)
- F7 пуск/ стоп осветление машнно
- F8 силни фарове ( увеличава двойно осветеността)
- F9 дълга тромба
- F10 пуск/ стоп компресор
- F11 врата кабинното отваряне/затваряне
- F12 врата машинно отваряне/затваряне
- F13 плъзгане странично кабинното стъкло
- F14 купла откачване/закачване
- F15 пуск пясък по релсата
- F16 аварийна спирачка(за звука)
- F17 спирачка (за звука)....
....
....
-F20 скърцане на ребордите в крива.
и т.н.
Принципно тези функции понякога доста се различават,
според вида на декодера, фирмата производител и не на последно
място - подвижният състав в който се програмират.
Освен в локомотиви ( минимум три вида) се слагат
на железопътни кранове, специални машини и вагони( цели влакове).

Преди години имаше една пътническа композиция на РОКО, в който сет освен звуков декодер
в електролокомотива, имаше такъв и във вагоните.
Те отваряха и затваряха вратите си различно и със
съответния звук, имаше команди на кондуктора, съобщения
от гаровата инфо уредба и т.н.

Та така....

ПП. Трябва ясно да разграничиш и разбереш какво е обаче CV и какво е функция. Последните модели декодери стигнаха до F28 и поради това в DCC    кода отскоро (2-5 години) въведоха още един байт (8 битов) между преамбюла и финалната проверка. ;D
« Последна редакция: 06 Март 2018, 15:50:59 от pach »