Yanshun

протеус особености работы цифровых моделей

22 сообщения в этой теме

Yanshun    392

Добрый вечер.

Один и тот-же проект в протеусе работает по разному, а именно: Первая схема подключения, индикатора, к UL2003 разряды не имеют на выходе подтягивающих резисторов к питанию, а вторая схема имеет. Вопрос заключается в том, что первая схема при запуске, в протеусе, загораются все сегменты и ни чего не отображается  корректно, а вот вторая схема отображает корректно цифры. Почему так происходит?

Приложил файлы для протеуса.

Благодарю. 

Схема.jpg

Тест 2.jpg

Тест.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
mvkarp    3 757

Потому, что резисторы там не нужны. UL должна поочередно подключать катоды индикатора к минусу. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yanshun    392

@mvkarp Добрый вечер.

Но без этих резисторов, почему-то, не хочет корректно отображать цифры, просто горят все сегменты и все, а с этими резисторами все хорошо. В реали тоже придется ставить эти резисторы на разряды? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
mvkarp    3 757
53 минуты назад, Yanshun сказал:

Добрый вечер.

Спасибо! Он добрый. И Вам того же.

Какой индикатор используете? Здесь должен стоять индикатор с общим катодом каждого разряда. Если индикатор именно такой, то мне непонятно, почему у Вас так происходит. 
Если индикатор с общими анодами, то можно ждать чего угодно. В том числе и правильного отображения.

@Mayder , генераторы не "загенерят". Для 155 совсем другие номиналы нужны.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UTSource

Найдите миллионы труднодоступных

электронных компонентов

mvkarp    3 757

Тогда или я чего не понимаю, или одно из двух. :)
Есть, как я недавно только узнал ( :umnik2: ) индикаторы и с другим соединением ног. 
Как реализуется динамическая индикация изучали? Это чтобы проще разговаривать было. И, может, если не получается, свою тему откройте. Или в личку мне как-нидь напишите. С Протеусом не знаком, по схемотехнике пройдемся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
colorad    434

@Yanshun   @mvkarp  Можно так сделать .  Вывести статически  в одном разряде цифру 1 например .  И выложить картинку симуляции . Там будет понятно . Красные квадраты на выводе  "1" , синие "0" .

Изменено пользователем colorad

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yanshun    392

@mvkarp  Сам проект я подробно не изучал, исходный код имеется, но в программирование я пока не разбираюсь, смотрю разные уроки по этому поводу.

Проект взят отсюда https://pwmccs.wordpress.com/2012/08/21/pic16f876a-max6675-display-termokupl-termostat/ там можно скачать все файлы.

Сейчас у меня пока нет контроллера, заказал с Китая, я бы тогда на макетке все проверил бы. А запустил протеус, хотя я ему не очень доверяю, симуляторам этим, и столкнулся с такой "проблемой" я бы конечно забил бы на это, но я думаю собрать данное устройство и хотелось узнать больше про него, пока не поздно. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
mvkarp    3 757

Я в нынешних кодах не разбираюсь. Очень давно писал на Ассемблерах. Нынешние лень изучать за ненадобностью. Так что в этом я Вам не помощник.
Про динамическую индикацию почитайте. Используется повсюду. Нужно разобраться и запомнить.

15 минут назад, colorad сказал:

Можно так сделать .

Я понимаю, как нужно делать. Но все уже описал чуть выше. :) Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
colorad    434

Я вывести предлагал @Yanshun . Но если он не может , тогда не подходит  .

Вариант  запасной . @Yanshun уберите процессор с платы и принудительно подайте нужные уровни и проследите сигналы . 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yanshun    392

@mvkarp @colorad  Сделал анимацию проекта в тротеусе, чтобы было все наглядно видно. Буду пробывать разбираться  

Спасибо

 

Скрытый текст

Animation 1.gif

 

 

Скрытый текст

Animation 0.gif

 

Изменено пользователем Yanshun

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
mvkarp    3 757

@colorad , самый первый метод проверки. И самый простой. И самый надежный. Принудительные сигналы. :)

 

@Yanshun , разместите, чтобы мне не мучиться с преобразованиями, архив с файлами, из которых делали анимацию. 

Изменено пользователем mvkarp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 358
12 часа назад, Yanshun сказал:

Почему так происходит?

так и должно быть. вы выбрали цифровую модель индикатора, оная работает только при наличии цифровых уровней на выходах, UIN2003 - модель аналоговая с выходом ОК и создать высокий уровень на входе индикатора не может, подтягивающие резисторы решают эту проблему.

10 часов назад, Yanshun сказал:

чтобы было все наглядно видно

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ARV    472
1 час назад, IMXO сказал:

вы выбрали цифровую модель индикатора, оная работает только при наличии цифровых уровней на выходах, UIN2003 - модель аналоговая с выходом ОК и создать высокий уровень на входе индикатора не может, подтягивающие резисторы решают эту проблему.

Не совсем так. Цифровой индикатор - это не означает, что ему требуются "цифровые уровни", это означает, что у него "цифровая логика" работы, т.е. как бы двоичная - светит/не светит. Цифровой индикатор не создает ток в своей цепи, поэтому отлично обходится без резисторов токоограничительных, не меняет свою яркость от тока через себя и т.д. То есть ведет себя совсем не так, как должен вести светодиод. В этом его отличие от "аналогового" индикатора.

Что касается ULN, то она не может создать высокий уровень на своей выходе не потому, что она аналоговая, а потому, что там открытый коллектор, который вообще уровня напряжения не создает, это токовый выход для втекающего тока. И создавать этот втекающий ток надо внешней цепью - резистором или еще чем-то.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 358
Только что, ARV сказал:

Не совсем так.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ARV    472

Я в курсе про переключалку. И в цифровом режиме они как раз ведут себя не как диоды, у которых прямое падение зависит от тока, а так, как сказал я - светят независимо от "расчетного" тока в цепи. Или не светят.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 358

еще раз для тех кто в танке: цифровая модель светит при наличии на ее аноде уровня  лог.1, те напряжения => 3,5v , падения напряжения на ней нет

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Бронюс    27

Простите, не в тему и наверное глупый вопрос:  Что с моим протеусом ?  Пробую открыть фаилы из архива  @Yanshun   и вот какие ошибки предявляет:

Скрытый текст

5960980962b94_Ekranonuotraukai2017-07-0811-21-05.png.4acdd0071ac4b16ae4f9f3a328795328.png

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IMXO    1 358

пишет что протез урезанный и не активированы модели

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
KomSoft    328

Похоже, что у вас протеус типа trial или demo, и не поддерживает все (или полные) модели. А у @Yanshun pro версия (или честно купленный, или правильно крякнутый) и поддерживает все.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yanshun    392

Добрый вечер.
Решил я протестировать проект (https://pwmccs.wordpress.com/2012/08/21/pic16f876a-max6675-display-termokupl-termostat) на макетной плате, как раз проверил ее работу.
Жаль что проект оказался не работоспособен. При каждой подаче питания на дисплее появляется значение 512 градусов. Можно сбросить данное значение трижды нажав на AYAR тогда термостат переходит в режим измерения температуры. Правда показания температуры в режиме реального времени не изменяются на дисплее, просто показывает измеренную температуру и все, если опять трижды нажать на AYAR, термостат опять покажет только что измеренную температуру. но цифры в реальном времени не меняются.
ULN 2003 я заменил на BC547, мне как-то проще с транзисторами.
Заметно мерцания цифр и довольно хорошо. Глаза быстро устают смотреть на дисплей.
Конденсаторы в параллель кнопок я не ставил, видимо отсюда мне не удается, при установки, делать шаги по 1 градусу единожды нажав на кнопку. При единичном нажатии показания скачут от 4 до 8 градусов, видимо в прошивке нет защиты от антидребезг  контактов, конденсаторы наверное выполняют эту роль.
При обесточивании и повторном включении устройство показания ранее записанные сохраняются.

Жаль конечно, а я так надеялся. 

SNC00783.jpg

SNC00784.jpg

SNC00786.jpg

SNC00788.jpg

SNC00789.jpg

SNC00790.jpg

SNC00791.jpg

SNC00792.jpg

SNC00793.jpg

SNC00794.jpg

SNC00795.jpg

SNC00796.jpg

SNC00797.jpg

SNC00798.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Yanshun    392

Код программы
 

Скрытый текст

'****************************************************************
'*  Name    : NAZMЭ BASAN                                      *
'*  Date    : 14.02.2012                                        *
'*  Version : 2.0                                               *
'*  compiler : proton basic v 3.5.2.7                           *
'*  Notes   : MAX6675 TERMOSTAD DEVRESЭ (test edilmedi)         *
'*          : pwm.c@hotmail.com                                 *
'****************************************************************
Device = 16F876A
Xtal= 4
@ CONFIG_REQ 
@ __config CP_OFF & CPD_OFF & WDT_OFF & XT_OSC & PWRTE_OFF & BODEN_OFF & WRT_OFF & LVP_OFF & DEBUG_OFF 

      
Symbol SO = PORTC.7 
Symbol CS = PORTC.5 
Symbol SCK = PORTC.6

Dim X As Word
Dim Z As Word
Dim Y As Word 
Dim T As Word 
Dim TOL As Word
Dim K As Byte
Dim ALSY As Byte
Dim VER As Byte
Dim HN1 As Byte
Dim HN2 As Byte 
Dim HN3 As Byte
Dim SAYAC As Byte 
X=1
Y=1
Z=1
T=1
TOL=1
K=0
SAYAC=0
TRISA=%00000111
PORTA=0
TRISB=0
PORTB=0
TRISC.0=0
TRISC.1=0
TRISC.2=0
TRISC.3=0
TRISC.4=0
PORTC=0
CMCON=7
ADCON1=6

KONTROL:
K=ERead 0  'KONTROL BAYRAРINI OKU
If K=1 Then HAZIRLA 'DEРER AYARLANMIЮSA HAZIRLA
GoTo AYARBAS   'YOKSA YENЭ AYAR
HAZIRLA:
Y=ERead 4
TOL=ERead 1

BASLA:
If PORTA.0=0 Then AYARBAS
'OKU
Low CS 
SHIn SO,SCK,0,[X\16]  
High CS 

'HESAP
X=((X>>2)/4)-24
HN1=Dig X,2
HN2=Dig X,1
HN3=Dig X,0
X=((HN1*100)+(HN2*10)+(HN3))

'GЦSTER
VER=HN1
GoSub TABLO
High PORTC.1
DelayMS 5
Low PORTC.1
VER=HN2
GoSub TABLO
High PORTC.2
DelayMS 5
Low PORTC.2
VER=HN3
GoSub TABLO
High PORTC.3
DelayMS 5
Low PORTC.3
VER=10' o
GoSub TABLO
High PORTC.4
DelayMS 5
Low PORTC.4

If X>=Y Then 
Low PORTC.0
EndIf
If X<=TOL Then 
High PORTC.0
EndIf
 
X=0
GoTo BASLA

AYARBAS:
Low PORTC.0
Low PORTA.3
High PORTA.5
GoSub SETGOSTER
If PORTA.0=0 Then AYARBAS

AYAR:
GoSub SETGOSTER
If PORTA.1=0 Then 
Y=Y+1
If Y=1000 Then 
Y=999
EndIf
EndIf
If PORTA.2=0 Then 
Y=Y-1
If Y=0 Then 
Y=1
EndIf
EndIf
If PORTA.0=0 Then TOLBASLA
GoTo AYAR

TOLBASLA:
High PORTA.3
Low PORTA.5
GoSub TOLGOSTER 
If PORTA.0=0 Then TOLBASLA

TOLAYR:
GoSub TOLGOSTER 
If PORTA.1=0 Then 
TOL=TOL+1
If TOL>Y-1 Then 
TOL=Y-1
EndIf
EndIf


If PORTA.2=0 Then 
TOL=TOL-1
If TOL=0 Then 
TOL=1
EndIf
EndIf


If PORTA.0=1 Then TOLAYR
KAYDET:
K=1
EWrite 0 ,[K]
DelayMS 10
EWrite 1 ,[TOL]
DelayMS 10
EWrite 4 ,[Y]
PORTB=0
High PORTA.3
High PORTA.5
DONGU:
High PORTB.7 'NOKTALAR
High PORTC.1
High PORTC.2
High PORTC.3
High PORTC.4
If PORTA.0=0 Then DONGU
DelayMS 3000
PORTB=0
PORTC=0
Low PORTA.3
Low PORTA.5
GoTo BASLA

SETGOSTER:
HN1=Dig Y,2
HN2=Dig Y,1
HN3=Dig Y,0
VER=11' C
GoSub TABLO
High PORTC.1
DelayMS 5
Low PORTC.1
VER=HN1
GoSub TABLO
High PORTC.2
DelayMS 5
Low PORTC.2
VER=HN2
GoSub TABLO
High PORTC.3
DelayMS 5
Low PORTC.3
VER=HN3
GoSub TABLO
High PORTC.4
DelayMS 5
Low PORTC.4
Return

TOLGOSTER:
HN1=Dig TOL,2
HN2=Dig TOL,1
HN3=Dig TOL,0
VER=13' R
GoSub TABLO
High PORTC.1
DelayMS 5
Low PORTC.1
VER=HN1
GoSub TABLO
High PORTC.2
DelayMS 5
Low PORTC.2
VER=HN2
GoSub TABLO
High PORTC.3
DelayMS 5
Low PORTC.3
VER=HN3
GoSub TABLO
High PORTC.4
DelayMS 5
Low PORTC.4
Return

TABLO:
PORTB=LookUpL VER,[63,6,91,79,102,109,125,7,127,111,99,88,64,80]
'                 [0 ,1,2 ,3 , 4 , 5 , 6 ,7, 8 , 9 ,o ,c ,- ,r ]
Return

End

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: Grampus
      Добрый день подскажите пожалуйста почему то в протеус не запускается программа
      пишет ошибки:
      -mixed model AVR2 DLL
      -Real Time Simulation failed to start 
       
       
       
  • Сообщения

    • Коротить R5 нельзя. Видите два одинаковых плеча R6-C3, R5-C6? Думаете они для красоты? Китайский капсуль не подходит, для этой схемы надо ставить именно панасоник WM-61A или WM-60. Сравните параметры панаса и китайца- они разные как небо и земля. Плата должна быть в экранированном тубусе а капсуль в трубке. Видели как сделаны измерительные микрофоны? Вот так и надо делать. 
    • Я не только читал но и до сих пор читаю. И давно распедалил орто на атомы... вывел свою систему расчёта ТРОСОРТО, можно сказать, что на орто я собаку съел и пудом соли закусил.  Визатоновский Топаз как был ЧВР с переменным сечением так и остаётся. А вот расположение нч излучателя (головки) влияет на гармошки. Могу показать эскизы ЧВОРТО. Практически всё тоже самое что у Топаза, только выхлоп-головка ортогональны. В любом волноводе волна плоская. На выходе она ещё плоская и разворачивается в сферическую лишь на расстоянии радиуса полуволны резонанса т.е в дальнем поле. Допустим Fb35 тогда радиус сферы будет 4.95м, практически в зоне прослушки. Четвертьволновый радиус будет на расстоянии 2.47м, что опять под ближнее поле никак не попадает. А то, что выдаёт мидбасовая головка вне полосы пропускания ЧВР вообще никак не интерферирует с плоской волной выхлопа т.к ортогональные волны не интерферируют. Смотрим рисунок одного патента и соображаем, есть тут ортогональность? Можно глянуть любой "тапок" -таппед хорн, это тоже самое что в этом патенте только хорн иной конфигурации. Смотрим два варианта ВЧР, один из которых орто. Смотрим ратент Суправокс. Французы его называют "RJ наизнанку". Есть тут ортогональность? А это эскиз ЧВОРТО на 4а32, которую собрал человечек из Новосиба и доволен ими как никогда.
    • Умные и адекватны люди все делают из соображений разумной достаточности, потому-что хорошо понимают, что минимизировать, улучшать, стремится к идеалу можно столько угодно долго, но какие-то неидеальности все равно останутся - мир не идеален. По этой же причине, те же умные и адекватные люди, придумывают нормы и ГОСТы, где четко прописано что такое хорошо, что такое удовлетворительно, а что такое плохо. У вас же какое-то свое личное представление о том, что хорошо и что плохо - как тараканы в голове нашептали так и сделаю + бесконечное стремление к улучшениям.  Два с половиной квардата хорошо, а четыре еще лучше, но восемь же еще лучше, шестнадцать вообще почти идеально, шестьдесят три квадрата вообще вообще хорошо.... ну и так далее, пока дело не дойдет до клиники:

    • Не думаю, что кто-то будет даже три метра на стоваттные АС кидать 0,75. А тем более на двухОмный саб с пиковыми токами под 20 Ампер. Но, конечно, это мое мнение. Никто не делает проводку из соображений минимальной разумной достаточности. Все стремятся минимизировать потери, даже пусть они и небольшие. Потому спор считаю высосанным из пальца ( в очередной раз) а провода на картинке- тонкими. МОЕ МНЕНИЕ, имею право.   А вы продолжайте скакать и бить балалайки об стены, дадуда. (с)
    •   Аналог 2n3819 - КП303Г, КП302Б   http://elektrikaetoprosto.ru/2n3819.html