Feedback Analyser Module (SimpleTesla SSTC)

А что мы делаем?
Аватара пользователя
iEugene0x7CA
Адепт
Сообщения: 1265
Откуда: Киев

Сообщение iEugene0x7CA » 16 окт 2018, 00:13

Ну что, упоминалось и даже запрашивалось о модуле FBA не один раз.
Думаю, что он заслуживает создания своей отдельной темки, особенно учитывая недавние успехи в разработке. :)

_MG_2335.JPG

Для тех, кто впервые услышал об это штуке — это анализатор обратной связи из SimpleTesla SSTC: viewtopic.php?p=12909#p12909
На практике именно эта система обеспечивает надёжность нашей SS'ки относительно пользовательских амбиций стрелять стримерами по земле, полностью закорачивать на неё терминал, ну и запускать без тора или вторички. ;)
Как известно, типичная SSTC где обратная связь сразу идёт на входа драйверов — подобную эксплуатацию переживает не лушим образом, или другими словами взрывается из-за феномена перехода на гармонику,
о природе которого можно прочитать по упомянутой выше ссылке.

Идеей этого модуля было дать возможность и другим койлерам строить надёжные user-proof установки на топологии SSTC — что на данный момент достаточно большая редкость.
Раньше подобные можно было сделать либо на технологии PLL, но она зарекомендовала себя как крайне сложная в настройке... Либо от прямого генератора, где нужно постоянно крутить ручку и ловить убегающий резонанс. :)
Надеюсь FBA гораздо упростит жизнь строителям SSTC, и было бы особенно круто увидеть супер-мощные SS'ки высотой с роста человека на кирпичах IGBT. :D

Ну что, а теперь немного о платке, в частности органах управления и ножках. :geek:
Входы-выходы FBA подписаны на обратной стороне модуля для большей миниатюризации:

1. Силовые входы "5V", "GND", и "FB ->". Первые два понятно что делают, но стоит упомянуть что платка так же может работать от 3.3V если установить R1 джампер, который по дефолту отсутствует.
Вход "FB->" идёт на стабилитрон и после диодную вилку через резистор, что позволяет извлекать обратную связь прямо с нижнего конца вторички без токовых трансформаторов.
Охладение стабилитрона как и в ST SSTC — огранизовано столбом припоя на весь верхний земляной полигон;
2. Входы-выходы сигнала прерывания и обработанной обратной связи. На "INT ->" принимается сигнал с прерывателя, а с "INT <-" обработанный сигнал прерывания идёт на ENABLE-входа драйверов.
Оба пина "~FB <-" и "FB <-" — это выходы обработанной обратной связи на драйвера, где "~FB" инвертирован если юзаются два одинаковых драйвера;
3. P_SELECT — джампер на 4-битное число, которым будет выставляться один из 16-ти пресетов. На данный момент планируется диапазон от 50 кГц и до 450 кГц, с шагом 25 кГц;
4. DF и SP, ли же "debug feedback" и "short protection" — эти фичи помогут с дебагом катухи в тяжелых случаях или при специфических тестах;
При debug feedback == 1 анализатор будет всегда генерировать заданную на P_SELECT частоту при наличии сигнала прерывания, полностью игнорируя реальную обратную связь.
Джампер "short protect" == 1 по дефолту, в таком случае анализатор будет игнорировать сигнал прерывания если обратная связь находится за допустимыми пределами высталенного пресета;
5. Светодиоды индикации, где "CPLD OK" это сигнал "ПЛИС прошита и готова к работе", мигающий "CLK" индицирует наличие клока(стандартно 24 МГц), "INT" — наличие сигнала прерывания,
"FB" — наличие сигнала обратной связи, и "SHORT" — сигнал, что анализатор задетектил ошибку(генерация за пределами пресета).

_MG_2337.JPG

Вообще, я только сейчас начал понимать какая же это кабина самолёта получилась. :lol:
Но ничего, в ближайшем будущем будет собран проектик "пользовательской SS'ки" с использованием этого модуля — там я расскажу подробней как пользоваться FBA,
и покажу разницу между защищённой SS'кой, и той где обратная связь сразу идёт на входа UCC'шек. Думаю будет весело. :)

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

AlexS
Сообщения: 23

Сообщение AlexS » 24 ноя 2018, 14:30

Вопрос каким образом изменить частоту? Что сделать с джампером?

Аватара пользователя
iEugene0x7CA
Адепт
Сообщения: 1265
Откуда: Киев

Сообщение iEugene0x7CA » 02 дек 2018, 01:39

AlexS писал(а):Вопрос каким образом изменить частоту? Что сделать с джампером?

Очень просто — работает как и джампера на SimpleDriver, но здесь они запаиваются дабы занимало меньше места, на SD одевались поверх пинов.
С нижней левой стороны есть вот такая площадка, где нижний ряд висит на GND, верхний на 3.3V, а центральные пады по отдельности подходят к ПЛИС.
В итоге, если запаять джампер на нижнем ряду — ножка ПЛИС подтянется к 0, если на верхнем, то к 1. Главное не запаять сразу сверху и снизу, а то будет закорот с 3.3V на землю. :mrgreen:
Можно задать число с 4-мя битами, например 0001, или 1001, и т.д. Всего получается 16 вариантов, и такое-же количество пресетов у настраиваемого анализатора.

Capture.PNG
Capture.PNG (410.09 КБ) 449 просмотров

Нынешние пресеты сгенерированы компьютером и представляют из себя вот такой список:
Номер пресета, он же в двоичном коде — оптимальная частота SS'ки(мин. частота - максимальная частота) Гц
Preset 0, 0b0000 — 60000.00 (51600.00 - 66000.00) Hz
Preset 1, 0b0001 — 80000.00 (70000.00 - 100000.00) Hz
Preset 2, 0b0010 — 105333.33 (90586.67 - 115866.67) Hz
Preset 3, 0b0011 — 128000.00 (110080.00 - 140800.00) Hz
Preset 4, 0b0100 — 150666.67 (129573.33 - 165733.33) Hz
Preset 5, 0b0101 — 173333.33 (149066.67 - 190666.67) Hz
Preset 6, 0b0110 — 196000.00 (168560.00 - 215600.00) Hz
Preset 7, 0b0111 — 218666.67 (188053.33 - 240533.33) Hz
Preset 8, 0b1000 — 241333.33 (207546.67 - 265466.67) Hz
Preset 9, 0b1001 — 264000.00 (227040.00 - 290400.00) Hz
Preset 10, 0b1010 — 286666.67 (246533.33 - 315333.33) Hz
Preset 11, 0b1011 — 309333.33 (266026.67 - 340266.67) Hz
Preset 12, 0b1100 — 332000.00 (285520.00 - 365200.00) Hz
Preset 13, 0b1101 — 354666.67 (305013.33 - 390133.33) Hz
Preset 14, 0b1110 — 377333.33 (324506.67 - 415066.67) Hz
Preset 15, 0b1111 — 400000.00 (344000.00 - 440000.00) Hz

Похоже на какие-то таблицы от NASA, не так ли. :lol:

Если кому любопытно как это дело выглядит в коде, и зачему нужно было генерировать. Я сам в афиге как это в EPM'ку 240 влезло. :)
 Остерегайтесь, простыни:
// Preset 0 -- F0: 60000.00 (51600.00 - 66000.00)
4'd0: begin
max_period <= 232;
min_period <= 178;
min_period_noise <= 163;
gen_period <= 200;
max_short_ticks <= 1392;
end

// Preset 1 -- F0: 80000.00 (70000.00 - 100000.00)
4'd1: begin
max_period <= 171;
min_period <= 117;
min_period_noise <= 106;
gen_period <= 150;
max_short_ticks <= 1026;
end

// Preset 2 -- F0: 105333.33 (90586.67 - 115866.67)
4'd2: begin
max_period <= 132;
min_period <= 100;
min_period_noise <= 91;
gen_period <= 113;
max_short_ticks <= 792;
end

// Preset 3 -- F0: 128000.00 (110080.00 - 140800.00)
4'd3: begin
max_period <= 109;
min_period <= 82;
min_period_noise <= 75;
gen_period <= 93;
max_short_ticks <= 654;
end

// Preset 4 -- F0: 150666.67 (129573.33 - 165733.33)
4'd4: begin
max_period <= 92;
min_period <= 69;
min_period_noise <= 63;
gen_period <= 79;
max_short_ticks <= 552;
end

// Preset 5 -- F0: 173333.33 (149066.67 - 190666.67)
4'd5: begin
max_period <= 80;
min_period <= 59;
min_period_noise <= 54;
gen_period <= 69;
max_short_ticks <= 480;
end

// Preset 6 -- F0: 196000.00 (168560.00 - 215600.00)
4'd6: begin
max_period <= 71;
min_period <= 52;
min_period_noise <= 48;
gen_period <= 61;
max_short_ticks <= 426;
end

// Preset 7 -- F0: 218666.67 (188053.33 - 240533.33)
4'd7: begin
max_period <= 63;
min_period <= 46;
min_period_noise <= 42;
gen_period <= 54;
max_short_ticks <= 378;
end

// Preset 8 -- F0: 241333.33 (207546.67 - 265466.67)
4'd8: begin
max_period <= 57;
min_period <= 42;
min_period_noise <= 38;
gen_period <= 49;
max_short_ticks <= 342;
end

// Preset 9 -- F0: 264000.00 (227040.00 - 290400.00)
4'd9: begin
max_period <= 52;
min_period <= 38;
min_period_noise <= 34;
gen_period <= 45;
max_short_ticks <= 312;
end

// Preset 10 -- F0: 286666.67 (246533.33 - 315333.33)
4'd10: begin
max_period <= 48;
min_period <= 35;
min_period_noise <= 31;
gen_period <= 41;
max_short_ticks <= 288;
end

// Preset 11 -- F0: 309333.33 (266026.67 - 340266.67)
4'd11: begin
max_period <= 45;
min_period <= 32;
min_period_noise <= 29;
gen_period <= 38;
max_short_ticks <= 270;
end

// Preset 12 -- F0: 332000.00 (285520.00 - 365200.00)
4'd12: begin
max_period <= 42;
min_period <= 29;
min_period_noise <= 27;
gen_period <= 36;
max_short_ticks <= 252;
end

// Preset 13 -- F0: 354666.67 (305013.33 - 390133.33)
4'd13: begin
max_period <= 39;
min_period <= 27;
min_period_noise <= 25;
gen_period <= 33;
max_short_ticks <= 234;
end

// Preset 14 -- F0: 377333.33 (324506.67 - 415066.67)
4'd14: begin
max_period <= 36;
min_period <= 25;
min_period_noise <= 23;
gen_period <= 31;
max_short_ticks <= 216;
end

// Preset 15 -- F0: 400000.00 (344000.00 - 440000.00)
4'd15: begin
max_period <= 34;
min_period <= 24;
min_period_noise <= 22;
gen_period <= 30;
max_short_ticks <= 204;

Да, система ввода конечно сумбурная, на финальной версии платки скорее всего будут пады под solderable jumper'ы, они вот так выглядят.
 Всем знакомая штука:
jumpers.jpg
jumpers.jpg (42.25 КБ) 449 просмотров

Или на крайняк купить очень маленький переключатель, я видел такие на видеокартах, но у нас в продаже не замечал — нужно поискать на Диджике.

Да, к чему это всё — проект ужасно обделялся вниманием, но таки периодически к нему возвращаемся. :)
По моему как раз AlexS заказал кроме кучу другого добра и прототип настраиваемого FBA на тестирование. Я вчера крутанул прошивочку как мог, и багов с ней замечено не было.
Похоже эта штука полноценно работает, и я могу выслать первую платку именно в том виде в каком это дело задумывалось. :geek:

По прежнему нужно сделать большую кастомную SS'ку для тестирования — сейчас начал пропускать отдельные заказы дабы было больше времени на разрботку.
А то я последние месяцы больше как работник на конвейере по сборке катух и платок — ни дня без активного заказа, которые надо пилить. :mrgreen:

MdAD-Q
Сообщения: 18
Откуда: Черкассы

Сообщение MdAD-Q » 02 дек 2018, 15:09

iEugene0x7CA писал(а):Или на крайняк купить очень маленький переключатель, я видел такие на видеокартах, но у нас в продаже не замечал — нужно поискать на Диджике.

Есть такие с шагом 2.54 :geek:
Космодром:
http://www.kosmodrom.com.ua/el.php?name=SWD4-1
http://www.kosmodrom.com.ua/el.php?name=SWD4-4
Даже на Вороне есть, но только такие:
https://voron.ua/catalog/032235
https://voron.ua/catalog/019593
Ну и Digikey:
https://www.digikey.com/product-detail/en/cts-electrocomponents/219-4MSTR/CT3117TR-ND/480303

Аватара пользователя
iEugene0x7CA
Адепт
Сообщения: 1265
Откуда: Киев

Сообщение iEugene0x7CA » 04 дек 2018, 18:45

MdAD-Q писал(а):Есть такие с шагом 2.54

Ну, эти достаточно жирные. Платку лучше сделать размером не больше SI, дабы легко помещалась в пользовательские катухи. ;)
Есть вот такие, достаточно неплохие свичи — шаг 1.27 мм, в длину около 5 мм(если версия с подогнутыми под корпус ножками): https://www.digikey.com/product-detail/ ... ND/1628195
Кстати, сделаны из очень неплохого пластика — у меня такой переключатель был на старой видеокарте, думал раскрошится после 30-ти переключений, но успешно выдержал 200 переключений пинцетом и даже не поцарапался. :)

 Фоточка, размер можно сранить с корпусами SOT-23:
SAM_2240.JPG

Единственная проблема, чем меньше переключатель — тем он дороже. Которые себе присмотрел — уже стоят по $2.5 за штуку, и это говорит само за себя.

По моему solderable short'ы — наиболее оптимальное решение, юзеру не нужно по 50 раз за день переключать настройку, по идее он знает на какую частоту строит катуху, и указать её нужно лишь раз.
Так же, платка всё равно будет устанавливаться в корпус компонентами вниз, дабы земляной слой экранировал от наводок — т.е. открыв "капот" теслы всё равно попереключать не получится.

Вернуться в «Наши проекты»



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей