Индукционный нагрев металлов.

  Вход на форум   логин       пароль   Забыли пароль? Регистрация
On-line:  

Раздел: 
Gauss2k - gauss gun у тебя дома / Электроника и Электротехника / Индукционный нагрев металлов.

Страницы: << Prev 1 2 3 4 5  ...... 83 84 85  ...... 196 197 198 199 Next>> новая тема

Автор Сообщение

магистр
Группа: Участники
Сообщений: 349
Добавлено: 17-03-2011 09:58
To ksv
эээ... На альтере у меня DIVIDER-2, т.е. Т*2. Достаточно двух импульсов прешедших с компаратара, и в вход ICP захватит Т*2, потом банальным сдвигом делим временной штамп ICP на 2. Вход PD4 используется для запуска таймера Т1 в момент когда нижний ключ открывается, устанавливается высокий уровень на X1.1, и происходит отсчет ДВУХ импульсов, после чего "Делитель" переходит в низкий уровень, а вход ICP захватывет время. На счет добротности - пробовал на Q~2-3. Работает! Частота, как таковая, не замеряется. Частоту я получаю по 2-wire от генератора (Проц №3).
==============================================
Вам станет немного яснее, когда я дорисую схему управления ключами!
ПС. Насчет помехи и тактирования от "кубика TTL" - при включеном качере и за 4 часа работы я получил одну ошибку CRC, но т.к. я отходил от компа я не успел глянуть что это было... Дело в том, что после выхода из спящего режима XP зачистила мне Virtual Terminal... Буду пробовать снова!

To Jab
Эйта - дигитал ту аналог конвертер

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 17-03-2011 10:17
Вам станет немного яснее, когда я дорисую схему управления ключами!
Ok

мастер
Группа: Участники
Сообщений: 82
Добавлено: 17-03-2011 12:15
To all:
Подскажите мне пожалуйста что это за элемент???

магистр
Группа: Участники
Сообщений: 349
Добавлено: 17-03-2011 12:25
To Kayra
Либо UF диод, либо транзистор. Судя по 12Y - это транзистор 2N-серии
========================
а! нет! бл. еле нашел! P35 = TK11235AU или AM = SOT89-5 = VOLTAGE REGULATOR
========================
Только у вас корпус другой - наверное SOT23L-6
---------------------------------------------------------
А у мена, как бы другой вопрос: Никто не озадачивался - а нельзя ли намотать трансформатор согласующий как-бы вдоль контура LC??? Без феррита - просто на бобину! м?????

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 17-03-2011 13:01
Вы же все равно будете на входе ГУНа RC ставить для интегрирования ШИМ-сигнала? Не так-ли?

Зачем? На выходе ГУНа бужет драйвер ключей. На выходе ШИМ будет RC после которога на вход ГУНа поступает напряжение. Т.е. доработка имеющейся схемы с первой странички, но заместо переменного резистора ручной настройки будет МК. Дале планирую ещё один контроллер втулить, который будет какимто хитроумным способом узнавать резонансную частоту контура и отправлять информацию на первый контроллер для подстройки частоты генератора. Както так на сегодняшний день.

Никто не озадачивался - а нельзя ли намотать трансформатор согласующий как-бы вдоль контура LC??? Без феррита - просто на бобину! м?????

Хм.. а какое будет индуктивность рассеивания этой бобины?
Мне кажется что КПД такой конструкции будет стремится к нулю. Я както выкладывал видео. К катушке присоеденена лампочка на 220, а катушку опускал в индуктор. Лампочка светилась. При этом опускаемая катушка грелась как паравоз. Долго она в индукторе не протянула бы.

магистр
Группа: Участники
Сообщений: 349
Добавлено: 17-03-2011 13:23
To Jab
Простите :) Иногда меня заносит не в ту сторону!
====================
Кстати, новая головка индуктора - 48 х 0,047u/2000V

Ибо выяснилась одна неприятная фигня - У СВВ81, при организации подключения типа "крыло", ну как у ksv, бывают как-бы провалы при резонансе. Я думаю, что ближние к контуру конденсаторы получают токовый удар из-за неравномерного распределения ВЧ токов по конденсаторной батареи. В моей модификации, я подключил один вывод капаситоров к одной стороне контура, а другой - соответственно к другой. По идее ток должен распределяться более равномерно... Ладно... Время покажет. Олово кончилось и "запал" на сегодня

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 17-03-2011 13:24
На выходе ШИМ будет RC после которога на вход ГУНа поступает напряжение.
Ну так я эту RC и имею в виду...

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 17-03-2011 13:42
analitik41, я делал аналогичную конструкцию капаситор танка ранее. Значит её забраковал ksv. Пришлось разобрать. Кстати, на фотке видно, что ещё немного олова есть на катушке.
ksv, значит я не совсем правильно понял, в каком именно месте предполагалась RC.

магистр
Группа: Участники
Сообщений: 349
Добавлено: 17-03-2011 13:48
To Jab
Ыыыы... Да! Чуть-чуть олова есть, только это усЁ. Кстати каварный припой - 30% Ag + 50% Sn + 20% Pb :) Это. Не понял - почему это забраковал ksv такую конструкцию??? Просто я залез в УПИ-60, и кой чего подглядел, по поводу LC контура и согласования :) И уащпе - давайте будим исходить из длины "rail+/-" и волнового сопротивления меди... Я что-то недопонял... Думаю, что длинна "rail" у меня аналогична длине
"rail's of ksv", так что не будим "rail'сами" мериться , а вот токи распределяются более правильно, как мне кажется во всяком случае. Ну не зря ведь в ИН промышленных так и приделывают кондеи?!
To ksv
Значит её забраковал ksv.

что не так с данным конструктивом???

гроссмейстер
Группа: Участники
Сообщений: 143
Добавлено: 17-03-2011 14:34
То-JAB
Была ошибка в разводке монт.платы, небыло (+) на LМ 324.
Диапазоны в ручном 49.75 -104.4 kНz, АВТО 74.83 kНz.
А такая конструкция пойдет?

C=2,7мкф
---------------------------------
(ну и dI/dt за одно...)- ЭТО ЧТО?

магистр
Группа: Участники
Сообщений: 349
Добавлено: 17-03-2011 14:42
To Irenchik
Во-во, я вот о чем и говорю! Первые две емкости ближних к индуктору, Вы уж простите за вульгарность, получат "токового пинка" под зад... точнее в ноги! Но Вы не расстраивайтесь, я думаю при мощностях <=5 kW это не столь критично
Позвольте узнать емкость каждого из 26?!(ну и dI/dt за одно...)
dI/dt - это характеристическая производная. Проще говоря скорость нарастания тока.
И странно вот еще - где вы взяли 22-е на 1600 вольт? WesTech Companent таких не делает, у них предел 630V на сколько я знаю... :) В общем непонятно. Вероятно будут греться не хуже метала в индукторе...
To ksv
Перестаньте включать криптоловые печи! У меня, а я живу на Камчатке, свет мигает

гроссмейстер
Группа: Участники
Сообщений: 181
Добавлено: 18-03-2011 00:26
Вот на 4квт ставил 112 штук WIMA FKP1(на700в переменного тока, 2000в постоянного ) навесного монтажа под вентилятор .Тогда точно не грелись больше 30 градусов .

магистр
Группа: Участники
Сообщений: 349
Добавлено: 18-03-2011 03:26
Продолжаю рисовать.
Значит добавил модуль драйвера ключей.

Пиковый выход до 4,5-5 ампер!
To ksv
Теперь немного яснее?!

П.С.
У меня Период генератора = периоду переключения ключей.

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 18-03-2011 04:41
To analitik41
что не так с данным конструктивом
Большая петля с большим током высокой частоты. Мы в прошлом году по весне, кажется, с этим разбирались. Точно не помню на этой ветке или у Каменщика.

Перестаньте включать криптоловые печи! У меня, а я живу на Камчатке, свет мигает
Честно говоря, у меня складывается ощущение, что они довольно экономичны. По крайней мере моя коаксиальная конструкция весьма эффективна. Нестрогий сравнительный анализ показывает, что для ряда задач криптол - действительно разумная альтернатива ИН. Единственное (существенное!) неудобство - печку приходится в тяге размещать - есть опасность отравления CO. А все остальное - грубо, мощно и надежно. Зря про них забыли.

Теперь немного яснее?!
Нужно посмотреть внимательнее. Может удастся в выходные. Там и поговорим. Сегодня как-то не получается. Если бы Вы еще приложили небольшой комментарий по алгоритму измерения частоты/периода свободных колебаний, то было бы понятнее. Как-то по схеме алгоритм МК не удается разглядеть.
А в качестве задающего генератора что используется?

магистр
Группа: Участники
Сообщений: 349
Добавлено: 18-03-2011 07:04
To ksv
Дал бы исходники, но там около 400 строк некоментированного кода на экологически чистом ассемблере! Могу только дать диаграмму сервисного модуля, это если в двух словах:


Задающий ген - Тинька.

гроссмейстер
Группа: Участники
Сообщений: 235
Добавлено: 18-03-2011 21:37
Вроде неплохой "ГУН" :

Duty Cycle Resolution of 1.04 ns for Dead-Time, Phase Shift, and Frequency

и DSP впридачу:
dsPIC

и примеры построения резонансного преобразователя представлены.

4 американских рубля стоит

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 19-03-2011 00:21
Вырисовывается вот такая поделка:




В процике ещё 3 ножки свободных. Занято памяти ROM=55% RAM=34%.
В общем ещё дофика места свободного. Можно ещё напрограммировать в него кучу всего. А если потом оптимизировать код, то и ещё больше напрограммировать можно туда. Чтобы только придумать вот. Яж говорю, что у меня с фантазией напряг в последнее время что-то. Думаю вот ещё ножку как минимум надо задействовать под управление выключением драйверов. И ещё ножку/две задействовать на переключение в автаматически режим. Хм.. Кварц тока надо раздобыть 20МГц.

гроссмейстер
Группа: Участники
Сообщений: 181
Добавлено: 19-03-2011 01:30
Питаюсь подобрать блокирующие диоды для макета но чета не могу определится . Думал не нужны они мне но когда посмотрел даташит транзисторов и увидел время восстановления паразитного биполярного транзистора понял что без блокирующих диодов при МГц не пойдет . Не где не нашел по каким данным их надо подбирать .Как бы диоды шоттки ставят но у тех нету таких напряжений и бывает неуказанно время восстановления .Подходит ли там диоды типа Ultrafast ?

мастер
Группа: Участники
Сообщений: 102
Добавлено: 19-03-2011 10:24
Транзистор IRGP50B60PD1 вот у него указывается рабочая частота 60…150 кГц в «жестком режиме». Он может работать ниже 60 кГц? Применим ли он для индукционного нагрева, я так понимаю, слабоват внутренний диод или можно блокировать внутренний таким диодом - 60EPU06PbF?
Спасибо.

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 19-03-2011 10:42
диодов при МГц не пойдет . Не где не нашел по каким данным их надо подбирать

Для полевика надо делать обвязку из прямого и обратного диода, как приводилось тут ранее. Вроде народ ставил шотки. Но думаю ультрафасты тоже должны пойти. Частота высокая, конкретно номинал не подскажу, но судя по всему нужно брать самый быстрый в наличии.
Он может работать ниже 60 кГц? Применим ли он для индукционного нагрева, я так понимаю, слабоват внутренний диод или можно блокировать внутренний таким диодом - 60EPU06PbF?

Ещё как может. Но дело в том, что для IGBT чем быстрее они, тем больше напряжение падения на них и соответственно больше потерь в открытом состоянии. Можно попробовать подискать более медленный, но с меньшим напряжением падения. По поводу внутреннего диода я уже писал неоднократно. Для IGBT яб выбирал без диода внутри и ставил сразу внешние диоды. Всеже два корпуса лучше рассеивают тепло, чем один и мгновенный перегрев кристалла будет меньше. Но в принципе можно шунтировать внешними диодами повесив непосредственно на транзистор RC снаббер, который будет затягивать фронты переключения.

магистр
Группа: Участники
Сообщений: 624
Добавлено: 20-03-2011 01:19
wmex думаю блокирующий (антипараллельный) диод должен быть способен запереться за время меньшее чем скорость нарастания фронта (оценить можно по углу наклона образующей трапеции - чем он менее 90 гр тем медленнее нарастание). Уменьшить угол нарастания может снаббер. Запирающий диод должен быть очень быстрым и выбираться по Trr (reverce recovery time). Параллельный диод, думаю, может быть чуть медленнее. Как на мегагерцах - не знаю, но на сотне килогерц Шоттки mbr20200ct при 200 вольт постоянки и токе через ключ 5-6 ампер без снабберов у меня не держали удар. Видимо не тянут по напряжению (а может и по обратному току), незнаю, а DSEP8-12А держали до 300 вольт от сети (выше блок питания не дает), но они и идут на 1200 вольт и обр. ток поболее вроде, а вот при увеличении тока (уменьшаем L, уменшаем С DC-блокирующего кондера) тоже пробиваться начинали (по току не держат). Думаю это обратимые пробои (ну если не долго их гонять и не слишком сверх вваливать), т.к. при отключении и последующем включении с меньшими нагрузками диоды работали.
Короче, не стал я лезть в дебри с фронтами, Trr и Di/Dt, убрал эти запирающие диоды и транзисторы поставил без внутреннего диода с внешним параллельным, вид осциллограм стал получше гораздо, ложные переключения прекратились. Может я что-то не так делал и ..., вобщем - у меня - так вышло получить нормальный высоковольтный прямоугольник (трапецию).
Думаю, стОит разные диодики попробовать, и увидите разницу между Trr, Urev, прямым и обратным током разных диодов.
====
Да, и треск транса я устранил, когда разобрался что такое Lp, Llkp, Lm и Lr и как они получаются из Lхх и Lкз!

гроссмейстер
Группа: Участники
Сообщений: 181
Добавлено: 20-03-2011 15:47
С этими блокирующими диодами вообще какие то непонятки . Месяцами гонял а тут посмотрел даташит и оказывается недолжно было вообще работать без блокирующих диодов .Опять же нашел в интернете схему с описанием на похожих транзисторах и еще большей частоты , типа работает а по времени восстановления паразитного биполярного транзистора не должно работать !?По моему в даташите указан наихудший вариант а реальное время восстановления на много бистре ,но на это полагаться наверно нельзя , придется блокирующие диоды все токи ставить .

магистр
Группа: Участники
Сообщений: 350
Добавлено: 20-03-2011 17:00
Хм..
Вообще время восстановления зависит от тока, который протекал через диод перед собственно восстановлением. В даташитах действительно приводится для максимальных режимов.

И вообще ОБРАТНОЕ ВОССТАНОВЛЕНИЕ НЕ ЕСТЬ КЗ. Ток обратного восстановления не может быть бесконечным и ограничен довольно определённой и не очень большой величиной Irr (см даташит). И она опять же приводится для максимальных режимов. Его можно прикинуть из Qrr и trr, если он не указан.

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

Повторюсь. Блокирующие диоды ставят для предотвращения открывания паразитного биполярника (из которого возникает тот самый паразитный диод) через паразитные ёмкости из за высоких dv/dt на тех же самых высоких частотах.

На относительно низких частотах они IMHO необязательны.

магистр
Группа: Участники
Сообщений: 624
Добавлено: 20-03-2011 18:28
N_N вот как раз хотел уточнить как этот Irr понимать - это ток вызванный обратным потоком носителей, т.е. по существу ток рассасывания неосновных носителей? Типа "отдача" если проводить аналогию с пушкой или пистолетом? А Trr тогда время возврата в исходное состояние в результате "отдачи"?

магистр
Группа: Участники
Сообщений: 350
Добавлено: 20-03-2011 18:45
http://www.eng.uwi.tt/depts/elec/staff/rdefour/ee33d/s2_rrch ar.html
хотя бы

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 20-03-2011 22:20
Я думаю, что при жестком переключении в блокирующих диодах больше смысла, чем при переключении в нуле тока. По этому транзисторы и не горели. Или я ошибаюсь? Если планируется частотное регулирование мощности, то блокирующие диоды понадобятся, если PDM или напряжением, то можно наверно и без диодов както выкрутится.

магистр
Группа: Участники
Сообщений: 350
Добавлено: 20-03-2011 23:20
Там в ссылке пробел перед ar.html надо убрать. Тогда работает.
Я его убираю правкой, смотрю сообщение, а он опять там Чё за?

магистр
Группа: Участники
Сообщений: 624
Добавлено: 20-03-2011 23:38
N_N Спасибо, посмотрел, вспомнил часть курса физики ПП привел в соответствие понятия, но аналогию пока еще не придумал - а значит еще не усвоил. А с сылкой у меня такая же фигня была, именно перед английским "a", тогда еще ksv, по-моему, предлагал мне поправить, я правил, а пробел опять появлялся.
Вот вспомнил лабы в студенческие годы типа также как-то делали
Диоды полупроводниковые. Метод измерения времени обратного восстановления

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 21-03-2011 05:24
To N_N
Ток обратного восстановления не может быть бесконечным и ограничен довольно определённой и не очень большой величиной Irr (см даташит).
Это верно, но, во-первых, это средний ток, а во-вторых, важно ведь не только значение самого тока, но еще и величина сопротивления по которому он течет (или падение напряжения). А они в этот период могут быть немалые. Поэтому мощность, рассеиваемая при обратном восстановлении (особенно на больших частотах) может стать существенной. А за счет первого "во-первых" - еще и выбросы.

См., например, у того же Семенова:
Проблемы коммутационных потерь в полумостовых и мостовых схемах . Там где-то в середине есть простая формула для оценки потерь за счет обратного восстановления.

To jab
Я думаю, что при жестком переключении в блокирующих диодах больше смысла, чем при переключении в нуле тока. По этому транзисторы и не горели. Или я ошибаюсь?
Нет, полагаю, Вы не ошибаетесь. См. эту же ссылку (ближе к концу).

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 21-03-2011 06:42
To analitik41
Посмотрел внимательней Вашу схему и алгоритм. Все хорошо и очень интересно. Но так и остались вопросы, которые были вначале.

1. Если я правильно понял, для измерения частоты (периода) Вы используете штатную процедуру "захвата" (ICP). Но на высоких рабочих частотах это связано с существенной погрешностью измерения. Например, при 300 кГц длительность импульса (полупериода) равна 1.67 мкс. При 16 МГц тактовой частоты это всего 26 тактов счетчика. Т.е. относительная ошибка измерения частоты - около 4%. Я правильно понял Ваше решение? Обычный захват? О флип-флопах ниже.

2. Вы довольно красиво (за счет двух флип-флопов) улучшили точность в 4 раза (до 1%). В принципе, наверное, можно было бы и еще продолжить в этом духе. Но здесь возникает второй вопрос. Допустим, у нас очень низкая добротность контура. Такая, что третьего периода свободных колебаний просто нет. У меня, когда в контур вставлен стальной болт, реализуется как раз такая ситуация. Натуральный "flat-line" после второго пика свободных колебаний. В этом случае импульс для "захвата" так и не будет сформирован (второй флип-флоп не дождется очередного фронта). Вы как-то обрабатываете эту ситуацию?

3. Не могли бы Вы рассказать подробнее про генерацию на тиньке? Если, конечно, это не является "военной тайной" . Поясню, почему у меня возник такой вопрос. Если Вы формируете частоту при помощи счетчиков, то на высоких частотах возникает та-же проблема с недостаточно высокой тактовой частотой счетчиков (в этом режиме она даже в 2 раза ниже!). Т.е. дискретность установки частоты становится недопустимо большой, грубой. Фактически просто не удается толком настроиться на резонанс. У меня на ЧИСТОЙ тиньке сделать приличный генератор так и не получилось. Честно говоря, даже не могу представить как это можно сделать. Поэтому я остановился на ФАПЧ-синтезаторах частоты. От тиньки беру только пару счетчиков-делителей для синтезатора, обработку кнопок управления частотой и другие сервисные функции.

магистр
Группа: Участники
Сообщений: 349
Добавлено: 21-03-2011 14:31
To ksv
Сергей Владимирович, значит я не понял что именно Вас смущает?!...
п.1: Опять повторюсь, но все же: Какой полупериод? Я меряю периодами, а это уже 52 итерации!!! Гляньте внимательней на flip-flop делитель... он защелкивается каждый 2-ой период... именно каждый 2 период и ни как иначе! И ключи работают на частоте синтезатора. То есть если лог1 - Верхний открыт, нижний закрыт, и наоборот...
п.2: Проблема имеет решение, в том, что называется: ERROR - разгрузите индуктор, либо я не стану работать. НО!!! Но на практике, данная ошибка еще не выскакивала. Дело в том, что генератор делает два последовательных пинка по контуру. Как я не пытался - два периода "вылазят" в любом случае. Уж не знаю с чем это связано... опять же, soft написан таким образом, что "на центральной частоте", если в течении определенного времени нижний фронт не пришел, пинаем опять... пнули три-четыре раза, нуль эмоций? - мощность 0%, ERROR, что-то не так. Выводим информацию на LCD!
п.3. Давайте, чисто формально прикинем:
1. Осцилляция 16 Mhz, что в свою очередь означает 16 миллионов итераций в секунду. Так? Так...
2. Частота 300 kHz - это 3,3us Период.
3. Счетчики? Таймеры имеется ввиду? Я использую таймер номер РАЗ. Без делителя, но с битом переполнения таймера. А погрешность 4*10^(-8) это погрешность?! мм... ну не попадает с точностью в 10HZ, но где криминал?? все тип-топ.
За 3.3us с 62ns/команда - можно добежать до финской границы! (и если постараться, к обеду быть дома) 0.0000033333/0.0000000625 =~53 итерации за период!
Так же, я использую так называемые "флаги конечных автоматов". Генератор генерит себе импульсы по прерываниям от таймера, но если приходит прерывание во время каких-либо расчетов, я выставляю как бы закладочку, что кой чего не досчитал, но после обработки прерывания, я обязательно закончу с расчетами и установлю другой флаг - "данные готовы, обновить частоту генератора можно уже... что и делается в следующем прерывании по таймеру"
====================================
АГА! По проблеме №2 - я думаю знаю в чем подвох... И вот встречный Вам вопрос: Вы датчик тока, так сказать, эфимерно прикидываете или расчитываете???? вот-вот... у меня расчитан по RMS 12вольт/14 ампер тока на ключах.
====================================
PS/PS
Не хватает времени? - Займи у соседа! :)

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 21-03-2011 15:28
To analitik41
Я хорошо понимаю, как вы "набираете" длительность импульса для "захвата". Возможно я просто не очень четко сформулировал вопрос в первом пункте. Я хотел просто уточнить - используете ли обычный "захват" (запуск/считывание по фронту и второе считывание по спаду). Или что-то такое-эдакое хитренькое придумали. Ну, если я правильно понял - обычный "захват". А рассуждения про полупериод - это просто "привязка к местности".

По второму пункту. Ответ понятен. Спасибо. Если я правильно понял, при очень больших нагрузках инвертор просто не запускается. Это ни в коем случае это не критика (нельзя сделать абсолютно универсальную систему!) - а просто констатация факта.

Ну и, наконец, третий вопрос. Я понял, как Вы генерите. Спасибо. Я использовал режим - CTC и брал "аппаратный сигнал" с OC1A. Не использовал прерывания. Меандр стоит как вкопанный, но частота его F = Fclk/(2*N*(1+OCR1A)). Т.е. в районе 300 кГц шаг - аж 13 кГц! Т.е. такой ряд частот: ... 307 кГц, 320 кГц, 333 кГц, ... и т.д. Слишком грубо.

По прерываниям, Вы сможете получите шаг по частоте в два раза меньше. Т.е. 6-7 кГц в районе 300 кГц. Конечно, все равно грубовато для настройки на резонанс. Особенно при высоких добротностях. Ну ладно. Решение понятно.

Хуже другое. Неопределенность вызова обработчика прерываний у AVR, если не подводит память, составляет до 3 тактов (т.е. почти до 200 нс в нашем случае!). Неужели частота (период) не дрожит? Или Вы это как-то побороли?
============================
Извините за некоторое занудство. Я просто в свое время довольно много думал на эти темы и в результате отказался от некоторых похожих решений. А вот смотрю, что Вы сделали реально работающую машину. Поэтому мне сейчас очень интересно и хотелось бы понять - может я слишком перестраховался и все эти эффекты не так сильно сказываются? Или, все-таки на практике не так все идеально? Синхронизация осциллографа иногда может сыграть злую шутку...
===============
PS
Про датчик тока - пока эфемерно. Ток передает, не насыщается и ладно. Все равно компаратор потом стоит. Ну а если число понадобится, тогда уже "руки помою"...
===============
PS2
Частоту-то удвоить не проблема. Вот с меандром-то как-то не очень понятно.

магистр
Группа: Участники
Сообщений: 349
Добавлено: 21-03-2011 15:42
Запуск таймера, когда на ноге PD4/X1.1 устанавливается низкий уровень, т.е. нижний ключ открылся! Захват по спаду на ICP.
Период меряет очень точно. порядка 0,5% отклонение. Где-то так.
---------------------------------------------------------------
Не запускается! Для больших нагрузок - другой инвертор. Вон в углу на тиристорах... у комрада исаева ))) Мой для плавки цветняка )))
---------------------------------------------------------------
...По прерываниям, Вы сможете получите шаг по частоте в два раза меньше. Т.е. 6-7 кГц в районе 300 кГц. Конечно, все равно грубовато для настройки на резонанс....Хуже другое. Неопределенность вызова обработчика прерываний у AVR...

Да! А Вы думаете я зря упоминал тактирование не от кварца?!
---------------------------------------------------------------
Какое уж там занудство??? Я только рад конструктивной беседе.
---------------------------------------------------------------
Частоту-то удвоить не проблема. Вот с меандром-то как-то не очень понятно.
Я ее и не удваиваю :) Так. Вы меня вынудили! Завтра сяду, да как откоментирую свой код к Тиньке, да как выложу его сюда! ))) Там и поглядим чего-куда плавает ))) Стоит как вкопанная! )))
----------------------------------------------------------------
Хммммммммммм........ Что значит "неопределенность вызова прерывания" - не понял...
----------------------------------------------------------------
но частота его F = Fclk/(2*N*(1+OCR1A)). Т.е. в районе 300 кГц шаг - аж 13 кГц!

о! fast-PWM вам в помощь! F = Fclk/N*(1+TOP)

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 21-03-2011 18:32
Я ее и не удваиваю :)
Да это я по поводу схемы с кучей инверторов в конце Вашего поста .
Что значит "неопределенность вызова прерывания" - не понял...
Где-то смутно в памяти сидит, что вызов обработчика прерываний занимает 1,2 или 3 такта. Но, честно говоря, не могу вспомнить где я это читал. Вспомню - скажу. Но (!) с внешними прерываниями сам специально проверял: сигнал с генератора на внешнее прерывание, в обработчике "дергаю" пин. Оба сигнала на осциллограф. Гуляют относительно друг-друга заметно. Я из-за этого даже потом PDM переделал - синхронизировал выход со входным меандром. Новая версия гораздо лучше работает.

о! fast-PWM вам в помощь! F = Fclk/N*(1+TOP)
Вот сделаете из него меандр, как раз и получите ту же самую частоту CTC. Но даже если извратиться и генерить меандр ШИМом, все равно это радикально проблемы не решает. Шаг-то все-равно великоват.

А вот на синтезаторе шаг по частоте у меня 62.5 Гц получается. Можно и меньше, но и так хватает. Мне нравится. Управлять синтезатором тоже можно автоматически через USART. Я вот только в измерение периода "рогом уперся" и поэтому "остыл" слегка с такому решению. Жаль. Не нашел хорошего и относительно простого варианта. Все решения какие-то "закостыленные" были. Поэтому и "переехал" на автоген. Там вообще все просто и "железно". А с компенсатором задержки вообще идеальный резонанс и, можно сказать, почти "задаром". Для любых dead-time-ов. Вот и решил пока на этом варианте остановиться. Хватит возиться с управлением. Нужно успеть еще с "силовой" частью "плотнее" повозиться. Там много с чем нужно еще разбираться. Хорошо бы тоже найти какое-нибудь "типовое", не сильно сложное, "бюджетное" решение.

Стоит как вкопанная!
Ну хорошо, если так! Может в вправду "болтанка" есть только у внешних прерываний. Они все-таки не синхронизированы с тактовым генератором. Нужно будет на досуге посмотреть другие прерывания на этот предмет...
==============
PS
Запуск таймера, когда на ноге PD4/X1.1 устанавливается низкий уровень, т.е. нижний ключ открылся!
Да, совсем забыл сказать. Там первый (отрицательный) полупериод - это еще не совсем свободное колебание. Может лучше его тоже пропустить?

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 21-03-2011 22:17
In, а где ссылки? На раьоте не мог посмотреть, а сейчас и след просты...

мастер
Группа: Участники
Сообщений: 102
Добавлено: 21-03-2011 23:08
jab вот Синтезаторы частот и 1, 2, 3, 4.

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 04:34
To In
Спасибо за ссылку №1! Весьма кстати.

===============================
А то замучился искать в Сети прототип своего ФАПЧ/НеФАПЧ, автоген/неавтоген. Теперь, наконец, хоть есть на что ссылку сделать . Вот блок-схема из этой статьи. Узел выделен красным.



Может (по сути) самым точным названием такого узла будет "ФАПЧ-компенсатор задержки"? По аналогии с ФАПЧ-синтезаторами частоты. А?

========================================================================================

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

Тем не менее, существует "импортный" термин "Negative Delay". Самое интересное, что есть уже электронные цепи, причем довольно простые, которые делают отрицательную задержку непериодических (!) сигналов. Т.е. натурально на выходе цепи сигнал появляется раньше, чем на входе. Конечно, не на очень много и не для произвольной формы импульса, но впечатляет!!!

См., например, работу Demonstration of negative group delays in a simple electronic circuit . Картинки - просто супер! Вот, например:


Даже на практике уже пытаются применить. Какая-то статья по кардиологии попадалась - там ребята пытаются заранее предсказать как стукнет сердце и скорректировать, ежели что не так...

гроссмейстер
Группа: Участники
Сообщений: 184
Добавлено: 22-03-2011 07:00

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


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

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 07:24
To e-nik
Данная задержка называется компенсирующей.
Спасибо за конкретный ответ. Устойчивый англоязычный термин действительно "Delay Compensation Circuit". Много ссылок и патентов.

===================================
PS
Конечно же, я тоже уважаю принцип причинности и законы сохранения тоже. . В работах, связанных с "negative delay", естественно, они тоже не нарушаются, но эффект выглядит просто потрясающе!

магистр
Группа: Участники
Сообщений: 349
Добавлено: 22-03-2011 07:33
To ksv
Я тут еще подумал и решил вот чего:
Раз уж мы боремся за герцы, то давайте сделаем так -
ДАНО:
;Таблица содержащая 256 значений выхода осцылятора.
.org 100
OSC_TABLE:
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
.db 0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff
; ИТАК! Fosc=16 000 000 Hz.
; Итак... Будем проходить по нашей таблице при помощи Z регистра, увеличивая его на один.
;Пишем:
ldi r30,LOW(OSC_TABLE) ;LOW(OSC_TABLE<<1) для восьмибитных CPU. Ну, тут ясно -> ставим указатель на начало таблицы.
----------------------------------
;считаем:
loop:
inc ZL ;у нас всего 256 значений, так что LZ только и инкрементируем!
lpm
out PORTB,r0
rjmp loop
----------------------------------
;что имеем??? А имеем мы 4 команды в цыкле, что составит 7 тактов процессора.
;Ок? ОК!
;итак, если проц работает на частоте 16MHz, он делает 16Mhz/7тактов=2 285 714,3 пробежек по loop. С этим разобрались. Идем далее... Если мы делаем 2 285 714,3 пробежек, то таблицу в 256 значений мы пройдем 2 285 714,3/256=8823,10 раз за секунду, что равно 8823Гц. Но мы хотим большего! Так ведь?
;читаем дальше. -> введем некоторую инкриментирующую переменную в 24 разряда. регистры r24,r25,r26. В качестве аккумулятора будем использовать Y-регистр и LOW часть Z регистра, ибо она у нас шарит по OSC_TABLE. подытожим!
LOOP1:
add r28,r24 ; 1 цыкл
adc r29,r25 ; 1 цыкл
adc r30,r26 ; 1 цыкл
lpm ; 3 цыкла
out PORTB,r0 ; 1 цыкл
rjmp LOOP1 ; 2 цыкла ИТОГО-9 цыклов. 16MHz/9=1777777,8 итерацый.

=====================================================================
жжжжтожжж, скажете Вы... А вот что! нам нужно переполнять 24бита аккумулятора побыстрее, чем 1777777,8... Как? ДА ПРОСТО:
Coeff=(16 000 000/9)/16777216 (16777216-это переполнение 24 бит)
Coeff= 0,106 - КОНСТАНТА!
ВУАЛЯ!!!
для получения частоты, ммм... скажем 30 kHz, достаточно занести число 30000/Coef в байты сумматора... т.е. 30 000/ 0,106 =283018 (HEX 0x04518А -> r24=0x8А r25=0x51 r26=04) и мы получим ой какой точный синтезатор.... уффф....

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 07:42
Ну теперь уже понятнее а то по "голой таблице" совсем фантазия разыгралась. Но еще не совсем понятно. Получится 62.5 кГц. А как частоту менять? Тактовой частотой МК?

гроссмейстер
Группа: Участники
Сообщений: 184
Добавлено: 22-03-2011 08:09

Конечно же, я тоже уважаю принцип причинности и законы сохранения тоже. . В работах, связанных с "negative delay", естественно, они тоже не нарушаются, но эффект выглядит просто потрясающе!

Я, честно говоря, не сильно вчитывался в статью.. Но по схеме не понял, как можно опередить сигнал по одной линии. В канале задержек стоит интегрирующий ОУ, в канале опережения дифференцирующий ОУ. Но как можно запустить канал опережения, если сигнал на его входе еще не пришел?

магистр
Группа: Участники
Сообщений: 349
Добавлено: 22-03-2011 08:15
To ksv
А как частоту менять? Тактовой частотой МК?
ВЫ ИЗДЕВАЕТЕСЬ, да?
нате! :)
;******************************************************************************
; start of code
;******************************************************************************
.include "m8def.inc"
.org 0
rjmp RESET
;******************************************************************************
; data tables
;******************************************************************************
; force table to begin at 256 byte boundary
.org 0x100
square: ; 256 step squarewave table
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01
.db 0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01;
;ДЛЯ НАГЛЯДНуСТИ будим мигать PIN.D.0 только :]
******************************************************************************
; code
;******************************************************************************
RESET:
ldi r16, LOW(RAMEND)
out SPL, r16 ; setup stack pointer
ldi r16, HIGH(RAMEND)
out SPH, r16
; -------------------------
ldi r31,HIGH(square<<1) ; setup Z pointer hi
ldi r30,LOW(square<<1) ; setup Z pointer lo
; set port B as output
ldi r16,0xFF
out DDRB,r16
; clear accumulator
ldi r29,0x00 ; clear accumulator
ldi r28,0x00 ; clear accumulator
; setup adder registers
ldi r24,0x8A ; setup adder value
ldi r25,0x51 ;
ldi r26,0x04 ;
LOOP1:
add r28,r24 ; 1
adc r29,r25 ; 1
adc r30,r26 ; 1
lpm ; 3
out PORTB,r0 ; 1
rjmp LOOP1 ; 2 => 9 cycles
вопросы, пожелания, предложения?!
=============================================
PS. не безупречно, конечно, но джиттер в +-10ns меня не смущает.
PS.PS. - хотим больше? делаем "лукапину" в 512 значений!
PS.PS.PS. - чешетесь от джиттера??? - берите кварц с частотой в степень двойки

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 08:56
To e-nik

Я тоже глубоко не вникал в суть, просто смотрел в Сети все что связано с задержками и "negative delays".

Насколько я понял из очень поверхностного "шапочного" просмотра, здесь вся "фишка" в сильной дисперсии среды. Аналогия с распространением волн в среде с дисперсией. На "пальцах" я это понял так. Допустим среда такова, что чем выше частота сигнала, тем выше скорость его распространения. Поэтому, когда низкочастотные компоненты еще "плетутся" в самом начале, высокочастотные уже добежали да конца и сформировали импульс. Групповая скорость может быть и сверхсветовой, правильно ведь?

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

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

====================

To analitik41
Я что-то так "моментально" не могу "въехать". После обеда немножко попроще будет - посижу, посмотрю алгоритм. Что-то Вы такое очень интересное придумали!

магистр
Группа: Участники
Сообщений: 349
Добавлено: 22-03-2011 09:18
To ksv
Да Вы не спешите! У меня у самого уже MathCAD задымился :)
=========================
У меня уже 5 вечера с копейками. Дома буду оптимизировать алгоритм по "предсказанию" будующего, т.е. который предполагает, где резонанс, и берет в "вилку", потом делит на 2, и еще, и еще, и еще... пока не зажмет очень плотненько :) Короче гря разработки полным ходом! по мере возможности буду и сюда заглядывать.
=========================
О! Я что хотел по криптоловым печам спросить: не дадите ссылочку на ВАШУ статью?! Я тут подумал-подумал, и надумал - крошить графит хочу попробовать. Интересно. Забавно. Весело. Грязно. Неординарно.
=========================
И - да!? Какие проблемы у Вас с силовой частью - что-то я не въеду. Я уже 3-й контур меняю(ради эксперемента), так вот GDT на пару с "прямым" приводом нижнего ключа отлично работают. По поводу гальванической развязки - я в датащите на MAX4420 смотрю и вижу - изоляция In <-> Out = min. 2400V DC. Не нужны оптроны и прочее... Если Вы сделаете регулируемый dead-time, то проблем вообще не будет. Я со своего инвертора уже 5кВт выжимал в течении 40 минут. Блин, может это и противоречит теории, но "ОНА КРУТИТСЯ!" :)

магистр
Группа: Модераторы
Сообщений: 4243
Добавлено: 22-03-2011 10:20
ksv
Конечно же, я тоже уважаю принцип причинности и законы сохранения тоже.

Какбы тынц. Вообще прикольно, что чувак получил нобелевку всего навсего за обнаружение эффекта туннелирования в полупроводниках. Мелочь, а приятно. Абалдеть.

магистр
Группа: Участники
Сообщений: 349
Добавлено: 22-03-2011 11:39
To Jab
Вы просто мастер в отыскании любопытных материалов!
To ksv
О! Сергей Владимирович!
Меня только что укусила моя собака и в связи с этим(а может быть и не с этим) родилась ИДЕЯ! У меня в синтезаторе запас по частоте образовывается - вытекает из последнего алгоритма. А как-то я щас встрою процедуру PDM, а прямо в синтезатор! :) уххх... или бред? Стоит попробовать? А да и попробую. Думаю меня никто не накажет за столь хулиганский поступок. Надо будет, правда что, корректировочки в код внести

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 11:47
To analitik41
Сегодня просто в институте какая-то аномальная беготня и суета. Весна. Все активизировались. Да и студентов-дипломников что-то много в этом году - суетятся все, бегают по институту...

А как-то я щас встрою процедуру PDM а прямо в синтезатор! уххх... или бред? Стоит попробовать?
Почему бред? Отличная идея. Если уж Вы используете что-то в виде шаблонов для генерации меандра (я еще не врубился), то сам Бог велел расширить это дело и на PDM. Правда, возможно придется делать много таблиц... Ну ладно я еще "не в теме"...

где резонанс, и берет в "вилку", потом делит на 2, и еще, и еще, и еще... пока не зажмет очень плотненько :)
Да, в таком качестве я метод дихотомии еще не встречал! Ну посмотрим-посмотрим...

Я что хотел по криптоловым печам спросить: не дадите ссылочку на ВАШУ статью?!
К сожалению, с прошлого года так и не собрался сесть и написать статью в раздел для наших молодых экспериментаторов. Вроде классика, а информации не так много. Поэтому лучше сделаем так. На днях я все равно буду печку перебирать. Поснимаю процесс сборки и выложу. Там все будет понятно.

А так по этим печкам есть кое-какая литература. Вот сложил в своей кубышке на nextmail.ru. Берите, если интересно. Классика!

1. Техника физико-химического исследования. Глава про криптоловые печи
2. Известная книжка Базилевича про криптоловые печки
3. И еще одна конструкция печки

Вот еще одна книжка. Вообще про то как и что греть. Старая, но очень добротная! Сейчас таких не пишут...
4. Нагревательные приборы в лабораторной практике


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

Какие проблемы у Вас с силовой частью - что-то я не въеду.
На уровне до нескольких кВт нет никаких особых проблем. Просто оказалось, что для одной задачки, которую я уже много лет мечтаю порешать, нужна мощность побольше. Дай Бог, чтобы десятки хватило! Поэтому, как говорят в школе, нужно "подтянуть" силовую часть. Ну посидеть, почитать, пофантазировать, поэкспериментировать...
=====================

To jab
...всего навсего...
Ну Вы даете!

магистр
Группа: Участники
Сообщений: 349
Добавлено: 22-03-2011 12:10
To ksv
Дипломы, суета... Да ужжжж... Я как вспомню - аж вздрогну :)
Эх.
Если уж Вы используете что-то в виде шаблонов для генерации меандра
это не совсем шаблон. Видите ли, принцип взят из механического шифратора. Вот представьте два диска. На одном, по окружности нанесены цифры, скажем так, с определенной последовательностью, а во втором диске есть несколько дырочек, причем они расположены в такой фазе, что при повороте на определенный угол открываются определенные числа, составляющие ряд последовательности кодирования. эээ.. 25BSR22-G-1-13, если это конечно Вам о чем-то скажет... (НУ ЭТО Я ТАК... В грубом приближении, но суть такая) . Так вот, щас попробую в железе. Уже созрел!!!

магистр
Группа: Модераторы
Сообщений: 1481
Добавлено: 22-03-2011 13:35
To analitik41

Ниже - текст как бы на псевдо C. Все-таки более человеческий язык.

Я правильно понял Ваш алгоритм?

//===========================================
byte Table[256] = {...}; // Первая половина таблицы 0, вторая - 1
unsigned long s = 0L; // Аккумулятор
unsigned long d = 283018L; // Инкремент
byte z; // Адрес в таблице

while(1){
s += d;
s &= 0x00FFFFFF;
z = s & 0x000000FF;
Вывод в порт Table[z];
}
//===========================================

И Вы утверждаете что z будет "правильно" бегать по таблице-шаблону? Я, конечно, еще не проверял, но как-то не очень верится... Получим какую-нибудь псевдослучайную последовательность...

А Вы проверяли свой алгоритм?

Страницы: << Prev 1 2 3 4 5  ...... 83 84 85  ...... 196 197 198 199 Next>> новая тема
Раздел: 
Gauss2k - gauss gun у тебя дома / Электроника и Электротехника / Индукционный нагрев металлов.

KXK.RU