Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Отвлекитесь, эмбеддеры! Отвлеченные темы - обсудить проблемы тепловой смерти вселенной, или просто пиво. Этот раздел - для отдыха.

 
Опции темы
Непрочитано 20.11.2017, 19:22  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
а в абстрактных попугаях или джоулях
да потомучто оно и меряется в этих попугаях. но по определенному закону. с датчика ты получаешь данные. на усилителе ты приводишь его к определенным значениям. темже 0 - 0 градусей, 1023 допустим 100. чтоб был запас по шкале. все на все остальные расчеты типа 1024*U/Uопоры можно ложить большой .... они тебе не нужны ну кроме интерфейса. ошибка в интегрировании как была так и будет. допустим уставка это 70 градусей - эквивалент по шкале будет допустим 875 считать лень. теперь считаем ошибку пида по уставке допустим на АЦП 500 Perr = 875 - 500 = 375. все все остальные расчеты пох...й. сколько градусей в действительности неипёт. есть ошибка на основе которой идет расчет и фсе. У пида основной закон какой - если разница между уставкой и текущим значением равна нулю - значит и воздействие равно нулю.

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

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

ИМХО такое впечетление что код писал человек умеющий писать только для компа.
stalkernet вне форума  
Непрочитано 20.11.2017, 19:37  
laser532
Почётный гражданин KAZUS.RU
 
Регистрация: 14.03.2009
Сообщений: 1,601
Сказал спасибо: 1,069
Сказали Спасибо 1,560 раз(а) в 857 сообщении(ях)
laser532 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

[QUOTE=ALEGYR;1159734 Почему, если мы производим нагрев бачка с маслом, мы должны оценивать нагрев бачка не в градусах, а в абстрактных попугаях или джоулях?[/QUOTE]

А какой-такой термометр выдает температуру в градусах? Обычно это или сопротивление или эдс, ну или инкрементальных дискретах. Кроме того, температура - редкое явление, обычно есть градиенты, теплоемкости датчиков и прочие неприятности. В некоторых случаях приходится вводить многопетлевые ОС. Особенно много хлопот доставляют коллекторные двигатели с редукторами, требующие разгона-торможения при подъеме-опускании. Там дохрена (много) состояний и моделей. Главное - это не работа в программе с физ. величинами в единицах СИ, а правильная интерпретация сигналов ошибки и результат воздействия на систему. Они нормируются внешними цепями, в программе расставляются допустимые лимиты и анализируются ошибки и аварии. При необходимости любую величину можно не спеша сконвертировать в удобную человеку.
laser532 вне форума  
Непрочитано 20.11.2017, 19:56  
Yuri222
Почётный гражданин KAZUS.RU
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,774
Сказал спасибо: 2,668
Сказали Спасибо 2,644 раз(а) в 1,952 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
У пида основной закон какой - если разница между уставкой и текущим значением равна нулю - значит и воздействие равно нулю.
А разве не тому значению, что к этому моменту наинтегрировалось?
Это у П-регулятора (чисто пропорционального) такой закон.

Последний раз редактировалось Yuri222; 20.11.2017 в 20:04.
Yuri222 на форуме  
Эти 2 пользователя(ей) сказали Спасибо Yuri222 за это сообщение:
AR_Favorit (20.11.2017), laser532 (20.11.2017)
Непрочитано 20.11.2017, 20:15  
Yuri222
Почётный гражданин KAZUS.RU
 
Регистрация: 08.02.2005
Адрес: Минск, Беларусь
Сообщений: 7,774
Сказал спасибо: 2,668
Сказали Спасибо 2,644 раз(а) в 1,952 сообщении(ях)
Yuri222 на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
Для меня проблематично понять другое - Почему прерывание по этому таймеру ( то есть по таймеру Systick) ты взял именно 1 миллисекунду, а не 10,100, или даже 1000 миллисекунд?
Рискну предположить, что
1. просто так удобно. И такое время заложено в алгоритм.
Время отсчета - это как цифровой фильтр. Частота опроса датчиков должна как минимум в 2 раза превышать частоту высшей гармоники сигнала.
Думаю, если превышает на 1-2 порядка - можно вообще не учитывать то, что измерения происходят дискретно.
2. там еще куча другого от этого таймера может запускаться - может, это критично...
3. а чтобы контроллер не простаивал
Ну просто не жалко его - негр должен работать, чтобы мысли нехорошие в голову не лезли. Если больше делать нечего - пусть дергается по таймеру.
Yuri222 на форуме  
Непрочитано 20.11.2017, 20:20  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от laser532 Посмотреть сообщение
При необходимости любую величину можно не спеша сконвертировать в удобную человеку.
Вот именно поэтому человечество и пользуется единицами измерения

Цитата:
Единица физической величины — физическая величина фиксированного размера, которой условно по соглашению присвоено числовое значение, равное 1.
С единицей физической величины можно сравнить любую другую величину того же рода и выразить их отношение в виде числа.
Применяется для количественного выражения однородных с ней физических величин. Единицы измерения имеют присвоенные им по соглашению наименования и обозначения.
https://ru.wikipedia.org/wiki/%D0%95...87%D0%B8%D0%BD
Так что, уважаемые форумчане, давайте считать себя людьми, а не машинами, и условно по соглашению считать, что ТЕМПЕРАТУРУ нагрева чего-либо мы измеряем в ГРАДУСАХ, а попугаев в лесу в попугаях.
Мы же все же рассматриваем код программы, написанный человеком на человеческом языке, а не обсуждаем методы преобразования аналоговых сигналов в цифровые.
ALEGYR вне форума  
Непрочитано 20.11.2017, 20:25  
stalkernet
Почётный гражданин KAZUS.RU
 
Регистрация: 02.07.2009
Сообщений: 1,110
Сказал спасибо: 1,246
Сказали Спасибо 2,178 раз(а) в 624 сообщении(ях)
stalkernet на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Yuri222, действительно - наитегрировалось. не точно выразился. Сенкс за поправку. смысл другой получается.

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

как и контроллер. ну не воспринимает он напрямую языки высокого уровня. понятного основной массе в разной степени. ну вот подай ему машинный код и фсе - хоть тресни.

Хотя конечно картинка еще та... Стоит злектронщик - программист и уговаривает контроллер "ну сделай тото, потом это, а если вдруг случится то-то пох...й. А если не дай бог это то врубай аварию. ну пожалуйста...." Я бы точно скорую вызвал.... специализированую....

Последний раз редактировалось stalkernet; 20.11.2017 в 20:39.
stalkernet вне форума  
Непрочитано 20.11.2017, 20:45  
ALEGYR
Вид на жительство
 
Регистрация: 10.06.2005
Сообщений: 325
Сказал спасибо: 43
Сказали Спасибо 360 раз(а) в 194 сообщении(ях)
ALEGYR на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от Yuri222 Посмотреть сообщение
Рискну предположить, что
1. просто так удобно. И такое время заложено в алгоритм.
Так алгоритм-то выбирает человек, и выбирая его, он на что-то опирается, чтобы выбрать наиболее оптимальный, а не абы какой!

Я бы например, зная что бачок у меня не может нагреваться быстрее чем 1-2 градуса в секунду (то есть до 100 градусов за 40-80 секунд) не стал бы измерять температуру с частотой 1000 раз в секунду! Мне бы хватило это делать и 10 раз в секунду (то есть иметь прерывание не через 1, а через 100 миллисекунд)! Тем более что и показания градусника, мы будем округлять до целого числа, чтобы не перегружать контроллер вычислением чисел с плавающей запятой!
ALEGYR вне форума  
Непрочитано 20.11.2017, 20:48  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,901
Сказал спасибо: 499
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
Для меня проблематично понять другое - Почему прерывание по этому таймеру ( то есть по таймеру Systick) ты взял именно 1 миллисекунду, а не 10,100, или даже 1000 миллисекунд?
Давай попробуем еще раз:

Сообщение от AR_Favorit Посмотреть сообщение
"Рассматривающему" это понять проблемно, но данный участок кода выдран из программы реального устройства, в которой помимо данного кусочка еще довольно много строк, оформленных в виде конечных автоматов, вызываемых раз в миллисекунду в основном цикле по флагу, устанавливаемому в этом прерывании.
Даже в приведенном участке кода видно, что нельзя взять прерывание Systick 100 м тем более или 1000 мс. PID-то продолжит работать (все равно будем вызывать его один раз в целое количество секунд, уменьшив множитель для EE_PID_TIME до, соответственно, 10 или 1). А вот исполнительная часть, реализующая ШИМ, накроется. Например, при периоде регулирования 1 с и периоде вызова процедуры 1 мс она фактически может реализовать 100 ступеней регулирования мощности (нагреватель работает от сети 220 В переменного тока 50 Гц, и управляется через оптореле, оно имеет схему детектора нуля, и симистор на выходе, следовательно всегда включается перед началом полупериода и выключается после окончания полупериода, а не "где попало", а в 1 секунде 100 полупериодов - дискретность не может быть менее 10 мс). А если мы вместо 1 мс настроим Systick на 1 с и начнем вызывать исполнительную часть один раз в секунду - она у нас будет выдавать IBV с периодом не 1 сек, а 100 секунд. То есть всё перестанет работать.

Как можно не увидеть это?!

Вот же человек понимает:
Сообщение от Yuri222 Посмотреть сообщение
2. там еще куча другого от этого таймера может запускаться - может, это критично...
И действительно, помимо нагревателя и термодатчика у утройства еще куча входных и исполнительных цепей, которые надо контролировать, подавлять дребезг и т.д. 10 мс вообще максимальный период для приемлемой работы данной программы на конечных автоматах, реализующих в том числе и интерфейс с оператором, но 1 мс удобнее просто для наглядности.
AR_Favorit вне форума  
Непрочитано 20.11.2017, 20:55  
j-Roger
Гражданин KAZUS.RU
 
Регистрация: 17.06.2008
Адрес: Украина
Сообщений: 682
Сказал спасибо: 362
Сказали Спасибо 756 раз(а) в 358 сообщении(ях)
j-Roger на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от stalkernet Посмотреть сообщение
мдя больше 20 лет программирую - а оказывается это человеческий язык. особенно Си...
- Где так долго пропадал?
- В Британии был!
- И как там с английским?..
- Да проще простого: они всё из C++ взяли.
j-Roger вне форума  
Сказали "Спасибо" j-Roger
stalkernet (20.11.2017)
Непрочитано 20.11.2017, 20:56  
AR_Favorit
Почётный гражданин KAZUS.RU
 
Регистрация: 13.03.2010
Сообщений: 2,901
Сказал спасибо: 499
Сказали Спасибо 3,061 раз(а) в 1,425 сообщении(ях)
AR_Favorit на пути к лучшему
По умолчанию Re: Мои ответы на вопросы [b]AR_Favorit[/b]

Сообщение от ALEGYR Посмотреть сообщение
Я бы например, зная что бачок у меня не может нагреваться быстрее чем 1-2 градуса в секунду (то есть до 100 градусов за 40-80 секунд) не стал бы измерять температуру с частотой 1000 раз в секунду! Мне бы хватило это делать и 10 раз в секунду (то есть иметь прерывание не через 1, а через 100 миллисекунд)!
А где ты увидел измерение температуры раз в миллисекунду? Его - измерения - вообще нет в приведенном участке кода. Взялся рассматривать мой код - так и рассматривай его, а не свои выдумки.
AR_Favorit вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Wiznet W7100. Общие вопросы R_N Микроконтроллеры, АЦП, память и т.д 7 06.06.2012 00:33
PCAD - вопросы и ответы avr123-nm-ru Proteus, KiCAD и другие ECAD 7 27.01.2011 21:15
Система измерения температуры (на AD8495), вопросы по схеме и реализации spartakchamp Измерительное оборудование 2 15.11.2010 22:04


Часовой пояс GMT +4, время: 18:05.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot