| Автор |
Съобщение |
|
Ico_Belqta
Ранг: Новодошъл
Регистриран на: Вто Мар 06, 2007 12:45 pm Мнения: 136
|
 Триак
Здравейте
Необходимо ми е да комутирам товар с триак без да внасям смущения в мрежата. Това което ми дойде наум беше оптотриак със zero cross и мощен триак,
Само че къде да вържа гейта на мощния триак ? Към фаза ли да комуритам за да го включа ?
Благодаря ви.
_________________ Мразя червени жички !!!
|
| Пон Май 05, 2008 7:51 pm |
|
 |
|
bobyper
Ранг: Ориентиран
Регистриран на: Вто Яну 31, 2006 11:11 pm Мнения: 295 Местоположение: София
|
|
| Пон Май 05, 2008 8:29 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
Няма значение.
|
| Вто Май 06, 2008 12:03 pm |
|
 |
|
npelov
Ранг: Почетен член
Регистриран на: Пет Яну 22, 2010 5:46 pm Мнения: 680
|
Отварям тази тема защото е подобна и да не правя нова. Не можах да разбера как zero crossing опериране с триака намалява смущенията и защо ги има иначе...
Ето до къде се простират знанията ми - разгледах как се държи трияка в 4-те квадранта (стр. 2):
http://ww1.microchip.com/downloads/en/AppNotes/00958A.pdf
Видях как microchip включват триака при преминаването на "0"-та. Видях и Phase control. Известно време се чудех как така zero cross + phase control, но после разбрах, че съм прочел погрешно и е или едното, или другото.
Та мисълта ми е - microchip в AN958 показват как да се регулира мощността на нагревател. Ами ако искам само да го включа и след време да го изключа. Не на няколко периода, а на 20 мин? Тогава трябва ли да включвам/изключвам на zero cross - сигурно ще помогне. Обаче друго ме тревожи - трябва ли да подавам импулс за да включвам триака на всяко преминаване през нулата или е достатъчно да подам непрекъснато (отрицателно) напрежение на управляващия електрод за да го държа включен.
Ок. Същото с по-малко думи. Ако трябва да държа нагревателя включен може ли просто да подам ток на УЕ или ще внася смущения в мрежата?
Всъщност по-лесно е да ползвам MOC3083 с вградена верига за zero crossing, но целта е много евтин таймер за малки мощности (лампи, поялник ...) с PIC10F200 и триак MAC97A8 (8 пъти по-евтин от MOC3083).
|
| Пон Май 03, 2010 1:27 am |
|
 |
|
dan
Ранг: Форумен бог
Регистриран на: Вто Май 29, 2007 2:23 pm Мнения: 3714 Местоположение: Високо в планината
|
Ако искаш можеш да "подаваш ток" на УЕ постоянно. Смущения нама да се получат. Смущенията идват от "накъсване" на синусоидата.
Т.к. контролера ти явно няма да има друга задача, няма да ти е проблем да му вкараш малко кодче, за да включваш триака всеки полупериод,което е и по-интелигентното решение май.
Само внимавай нещо: Ако решиш да палиш триака с импулси( да не поддържаш постоянно тока през УЕ), след подаването на импулса трябва да изчакаш известно време(времето на задействане на триака). За mac97 това време е около 2 us.
Успех!
|
| Пон Май 03, 2010 10:25 am |
|
 |
|
npelov
Ранг: Почетен член
Регистриран на: Пет Яну 22, 2010 5:46 pm Мнения: 680
|
Мерси. Главния проблем е че програмата е прекалено сложна за горкия PIC10F200 и понеже няма прекъсвания трудно ще следи и за нулата. Обаче не е никакъв проблем при влключване да изчака синусоидата да пресече 0-та и тогава да подаде напрежението. И все пак следенето на 0-та си е цял пин...
|
| Вто Май 04, 2010 10:57 am |
|
 |
|
dan
Ранг: Форумен бог
Регистриран на: Вто Май 29, 2007 2:23 pm Мнения: 3714 Местоположение: Високо в планината
|
какво още ще прави/смята контролера? Ако паленето ти отнеме 5us, имаш почти 10 ms до следващото пресичане на нулата, през което да си смяташ каквото искаш и после да се върнеш на четене на пин. А ако четеш няколко различни неща, можеш просто да ги "обхождаш"последователно. Няма да имаш кой знае какво закъснение...
|
| Вто Май 04, 2010 12:48 pm |
|
 |
|
npelov
Ранг: Почетен член
Регистриран на: Пет Яну 22, 2010 5:46 pm Мнения: 680
|
Предимно чакам таймера да отброи до 195 с прескалър 256 това е 49920 us. После трябва да направя закъснение от 80 us и да увелича брояча на частите от сек.. След това увеличавам секундите (16 бита). Всичко това е малко по-трудно ако правиш проверки между другото. Да не говорим че проверката за нулата ще вкара допълнителни инструкции които понякога отнемат 2 цикъла, а понякога 3 (примерно btfss и следващата инструкция).
Виж за еднократното пускане не е проблем. просто чакам нулата - това ще увеличи 20-те минути на таймера с 10 ms. Но ако има грешка няколко us на всяка 1/25 от секундата това може да доведе до неточности. Не че е невъзможно. примерно това винаги ще трае еднакъв брой цикли:
Аз си мислех въобще да не ползвам пик-а за таймер. Мислех да броя zero cross  - но ще стане още по-неточно. Макар че имам един механичен таймер, който ползва 50-те херца на мрежата за да отмерва времето и беше сравнително точен.
|
| Вто Май 04, 2010 4:13 pm |
|
 |
|
dan
Ранг: Форумен бог
Регистриран на: Вто Май 29, 2007 2:23 pm Мнения: 3714 Местоположение: Високо в планината
|
А колко по-лесно ще бъде да не правиш нищо...
сега сериозно: писането на ассемблер ти дава възможността директно (пряко) да сметнеш колко бързо ти се изпълнява дадена функция. Останалото са напасване на числата, с които зареждаш таймера(или които сравняваш с резултата от таймера).
А ти с каква точност мислиш, че ще можеш да измериш нулата? 100мкс?
|
| Вто Май 04, 2010 5:12 pm |
|
|