|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 1:42 am
| Автор |
Съобщение |
|
E1
Ранг: Почетен член
Регистриран на: Нед Юли 22, 2007 8:57 pm Мнения: 607 Местоположение: Белград
|
 Препоръчайте концепция
Предстои завършването на едно начинание, започнато преди няколко години. В общи линии предствлява 120 вентилатора (12V/200mA), като скоростта на въртене на всеки се определя от ТОЗИ сензор. На практика трябва да се разчетат 120 аналогови сигнала и да се организират 120 PWM за контрол на вентилаторите. По какъв начин най-пестеливо може да се направи?
|
| Съб Мар 31, 2012 3:01 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
 Re: Препоръчайте концепция
Със 120 малки PIC-чета - 10-а или 12-а серия  . Т.е. проектираш си една малка платка с един такъв пик, имаш един аналогов сигнал да мериш и един PWM с един транзистор и после налепваш 120 платки, закрепяш ги някъде по вентилаторите, правиш си едно яко захранване, която да може да захрани всички вентилатори и платките и си готов  .
|
| Съб Мар 31, 2012 4:33 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Препоръчайте концепция
Абсолютно за това което предлага Димитър, само дето няма нужда и захранване да си правиш, има достатъчно много готови индустриални, включително и такива които са резервирани.
|
| Съб Мар 31, 2012 5:00 pm |
|
 |
|
E1
Ранг: Почетен член
Регистриран на: Нед Юли 22, 2007 8:57 pm Мнения: 607 Местоположение: Белград
|
 Re: Препоръчайте концепция
Захранване имам-компютърно 12V/60A. Няма грижи от тази страна. Инсталацията работеше, но сега се добавят "екстри" и стана страшничко... Мислех да опитам с 15 по-сериозни ПИК-а, разполагащи с няколко ADC канала. Но май ще се замисля за предложението със 120. Има още една завързана ситуация - трябва да им се подават стойностите от компютъра. Което значи, че ще се наложи да се съберат контролерите на две-три платки, за да няма още 1000 кабела по инсталацията.
|
| Съб Мар 31, 2012 5:32 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
 Re: Препоръчайте концепция
Ако ще им се подават данни от комп, то тогава наистина е по-добре да отидеш на по-голям пик, който да контролира няколко вентилатора и да ги навържеш всички по CAN бъс с компа. Някой може би ще каже RS-485, но засега аз още не съм видял нещо по-лесно и по-работещо от CAN-а. Така че групираш ги там по 6, 12 или колкото решиш, навързваш ги на CAN-а и от там в компа. Даже някоя развойна платка на Майкрочип може да я ползваш за преходник USB<->CAN та да не се налага и нея да правиш. Например ей тая: http://www.microchipdirect.com/ProductS ... P2515DM-BMАз ти предложих пикове да ползваш, защото ги има в малки корпуси, ама сега като се промени малко концепцията вече можеш да ползваш всякакви контролери. Аз примерно бих го направил с някой от Фрискейл  .
|
| Съб Мар 31, 2012 9:53 pm |
|
 |
|
E1
Ранг: Почетен член
Регистриран на: Нед Юли 22, 2007 8:57 pm Мнения: 607 Местоположение: Белград
|
 Re: Препоръчайте концепция
Не знам дали ще е проблем, все пак да ползвам PIC12F675 например(достатъчно ефтини са). И да ги свържа заедно да "слушат" MAX-232. Единственото неудобство ще е, че всеки трябва да се програмира да разчита само данните, предназначени за него, като всички следят комуникацията. Но това едва ли ще създава голямо неудобство, защото всеки вентилатор се държи различно и така или иначе, ще трябва калибриране на всеки поотделно. Иначе възнамерявам да се предава двубайтово съобщение: Номер на вентилатор и стойност. Ако видя, че няма да се получи, ще използвам част от сегашното управление, за да приема съобщението, а ще си съставя протокол, който да служи за предаване на данните само към процесора, който трябва да си смени стойността(например с ползване на 3 извода - единият разрешаващ, а двата подобно на I2C. Но докато не се предаде сигнал за приемане на разрешаващия вход, процесорът не следи какво тече по останалите два). Вече ползвах подобен подход и се оказа доста успешен, със забележката, че има голям брой допълнителни проводници.
|
| Съб Мар 31, 2012 10:08 pm |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
 Re: Препоръчайте концепция
Погледни за DMX комуникацията - всеки пре-предава следващите след първото съобщение нататък и навързани на черво един след друг.
|
| Съб Мар 31, 2012 10:58 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
 Re: Препоръчайте концепция
Аз ти казвам как според мен ще стане най-лесно и най-надеждно, пък ти вече си решаваш сам какво точно ще направиш  .
|
| Нед Апр 01, 2012 2:10 am |
|
 |
|
Н'бабане Гт'муан'га
Ранг: Форумен бог
Регистриран на: Сря Яну 25, 2012 9:14 am Мнения: 5298
|
 Re: Препоръчайте концепция
Аз също подкрепям идеята на Димитър. С PIC10F320 например би станало много лесно тъй като той даже си има хардуерен PWM. Става и с ATtiny5 или 10
_________________ 'просто' е технически синоним на 'красиво'
|
| Нед Апр 01, 2012 2:50 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
 Re: Препоръчайте концепция
И при тези условия все си мисля че отделни контролери е по-добре, дали ще е CAN или прост 485 едва ли има значение, за предаванеот на една стойност еднопосочно 485 мисля е напълно достатъчно. Развира се много зависи как са разположени тия фентилатори, но аз не си представям ниакакъв компактен вариант със 120 парчета. Ако са разположени компактно близо един до друг, един контролер за повече вентилатори също би могъл да е ОК, но стават едни кабели и кабелчета, зависи къде са самите сензори .. абе много и дълги кабели с PWM никога не са ми били мечта, макар и за малка консумация като от вентилаторчета. Ако имаш отделни контролери имаш едно захранване, един комуникационен и това е, всяко си е на фентилатора. Не знам каква ти е конструкцията и приложението, ама аз дори бих направил нещо още по-извратено, бих пуснал 48 V захранване и бих го конвертирал на всяка платка, така няма да има много дебели захранващи кабели, а и с оглед на това че така и така имаш PWM .. то направо може да си управляваш DC/DC конверторче, малко повече компоненти, но пък доста по-тънки кабели.
|
| Нед Апр 01, 2012 10:34 am |
|
 |
|
Н'бабане Гт'муан'га
Ранг: Форумен бог
Регистриран на: Сря Яну 25, 2012 9:14 am Мнения: 5298
|
 Re: Препоръчайте концепция
Всъщност, не знам дали правилно разбирам от това което си обяснил - 120-те PWM винаги линейно ли ще зависят аналоговите сигнали на сензорите? Ако е така, дори и микроконтролери няма да са нужни, а чипове с 'твърда' логика като TC648 например.
_________________ 'просто' е технически синоним на 'красиво'
|
| Нед Апр 01, 2012 10:47 am |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
 Re: Препоръчайте концепция
RS485 на ниска скорост да кажем 400-800b/sec може смело да си го разклоняваш както ти е удобно ако не опъваш с километри кабели. За този случай е най добре да си направиш терминиране с шотки диоди във всеки отделен дивайс. В този случай с едно малко ATiny 13 на всяка платка може да стане доста елегантно. Добре е да си направиш двупосочна комуникация за да имаш и някаква диагностика,тоест да получаваш потвърждение от контролерчето че съобщението е прието. Все пак дълга и разклонена мрежа предполага че ще имаш и смущения,тоест ще имаш грешки. В пакета който предаваш си включваш и контролна сума,да кажем CRC16. Ако е прието ОК си връщаш някакво 2-3 байтово съобщение за OK. Ако е прието с грешка си връщаш пак някакво 2-3 байтово съобщение за грешка. Самия протокол на командата трявба да е нещо просто. За пример: 0xАА,0xАА -> Старт на команден пакет 1 байт номер на дивайса 1 байт скорост на въртене 2 байта CRC16 или един байт CRC8 включваши горните два байта.
OK пакет 0xAA 0x11
ERR пакет 0xАА 0x88
Предвиждаш и таймаут малко по голям от времето за изпращене на командния пакет. Ако след като е пристигнал един или повече байтове а таймаута е изтекъл приемника се ресетва и чака начало на нова команда.
Така ще се получи и най лесно и бюджетно. Отделно комуникацията ти защитена от грешки. Ако не получиш отговор до някакво време от съответния вентилатор пращаш пак. Ако получиш ERR веднага пращаш пак. Ако е OK знаеш че със сигурност си сетнал съответния вентилатор и преминаваш към следващата операция. Ако не успееш извеждаш по съответен начин информация че има грешка при комуникацията с съответния номер вентилатор.
По работеща концепция здраве му кажи. Отделно можеш за близкоразположени вентилатори да си направиш втори вариант платка който да управлява няколко. Като се управляват по същия протокол. Просто го правиш да отговаря на N позледователни адреси.
Това е цялата философия.
|
| Нед Апр 01, 2012 2:51 pm |
|
 |
|
gicho
Ранг: Форумен бог
Регистриран на: Пон Мар 13, 2006 1:59 pm Мнения: 3867 Местоположение: Габрово
|
 Re: Препоръчайте концепция
Още един глас за CAN, но може би ако се ползва PIC ще е по-евтино с LIN? Не съм го ползвал, но маркетингово се води по-евтин и бавен вариант за същите цели.
|
| Нед Апр 01, 2012 2:58 pm |
|
 |
|
E1
Ранг: Почетен член
Регистриран на: Нед Юли 22, 2007 8:57 pm Мнения: 607 Местоположение: Белград
|
 Re: Препоръчайте концепция
Интересни идеи. Все са подходящи, доколкото виждам. Досега работеше само с предаване на ON/OFF за съответния контролер. Комуникацията беше през паралелен порт в първата версия и сериен в следващата, а самите вентилатори се управляваха със 74573, като командите подавах от микроконтролер, по алгоритъм за динамично управление на матрично свързани светодиоди - EN_X - зареждане на стойност - ~EN_X. Нямаше нито един случай на грешка, въпреки че нямаше checksum. Но май няма да бъде лошо да се предвиди такава възможност.
|
| Нед Апр 01, 2012 4:58 pm |
|
 |
|
¶
Ранг: Форумен бог
Регистриран на: Пет Фев 25, 2005 1:58 pm Мнения: 4585 Местоположение: US
|
 Re: Препоръчайте концепция
Не видях да си специфицирал какво е разстоянието между отделните възли. Ако всички са навързани на магистрала един след друг колко е разстоянието от последния до компютъра ? Ако се окаже километър-два то нито CAN нито RS485 ще работят стабилно, тогава ще трябва да мислиш за модеми или токов кръг. При концепцията едно да препредава на другото може да възникне проблем с препокриване на времената на излъчване, примерно компютъра праща на 1-вото, 1-вото получава и препраща на 5-тото, обаче 1-вото не получава потвърждение от 5-тото и се опитва да препрати на 4-тото, но в същия момент 5-тото е получило правилно пакета от 1-вото и се опитва да препраща на 10-тото, тогава 1-вото и 5-тото ще се сбият на шината и трябва да имаш възможност да разрешиш един такъв потенциален конфликт. CAN предлага решение на този проблем, но RS485 не. Така че вземи напиши една точна спецификация, разстояние между устройствата, скорост на трансфер, големината на един пакет с данни, потвърждение или без ( acknwoledge ), тогава ще може да се направят по-точни предложения.
Засега мога да ти дам съвет да не се нахвърляш на контролери за по $1-2, щото в един момент ще се окаже направил си 120 платки, инсталирваш ги и се оказва, че нещо куца и ти трябва малко по мощен контролер, с повече крака и с някаква допълнителна индикация ( примерно по един светодиод за приемане и предаване ), RS232 към компютър, куплунг за препрограмиране, тогава трябва да направиш нови 120 платки, нови процесори, става мамата си е ебало. Затова хората казват три пъти мери, един път режи.
Вентилаторите предполагам ще ги инсталираш в някоя мина ?
П.П. Платката на Microchip е неудачен избор за CAN <-> USB конвертор, освен ако не си напишеш собствена програма за PC-то. Ако все пак се спреш на този конвертор мога да ти дам това онова за протокола между платката и компютъра ( имам просто конзолно приложение, писано на Qt, което чете платката през libusb ).
_________________ Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....
|
| Пон Апр 02, 2012 9:36 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|