PIC 2

~ 28 Dec 2008, 02:49

Градежа на Нещото се наложи да почака малко. Бях решил като следваща стъпка да направя прост контролер на ел. мотор (правотоков). За съжаление, първо ми изгоря PICKit2 програматора (но Microchip бяха така добри да ми пратят нов), а после зациклих с търсенето на елементи. Повечето неща в крайна сметка накупих от Пулсатор - DC моторче, релета, букси и прочее. След намесата на поялника, демо платката леко се пренасели, но нямаше как:

Image
Демо платката вече не е така голичка...

Image
...барабар с моторчето...

Схемата е прост H-bridge, реализиран с 4 релета. Големият резистор от първата снимка е по пътя за масата - служи за да се прекара част от тока към A2D-то (Analog-to-digital преобразувателя), така че да може да се мери колко ток минава през мотора, респективно - колко е натоварен. За дебъг сложих резултатите от измерванията да се показват на диодите. Демонстрация на цялото нещо съм качил ТУК. Вижда се как, като почне да се тормози моторчето, токът нараства (диодите показват двоичен код; малко са треперливи, но е нормално, все пак измерванията се правят 200 пъти в секунда. Всъщност пробвах и да усреднявам стойностите за четвърт секунда, но резултатът беше доста по-скучен).

След като вече командвам моторчето, остава да потърся още малко механични части и да разуча power-saving способностите на моя PIC... и Нещото ще е готово... пазете се.. ТО Знае Къде Живеете (devil)



Коментари:

#1 от nemaproblem, изпратено на 3 Feb 2009, 15:49


Не разбрах PIC-ът кой е?
Коя среда за програмиране ползваш?
Мощният резистор много ме кефи, прилича на С2-10-2, Made in USSR


#2 от anrieff, изпратено на 3 Feb 2009, 19:45


PIC16F690 е процесорчето.
Средата е MPLAB.
Резисторът e 10 ома, даже може би е точно този, който си споменал - ще проверя, като се прибера :)


#3 от nemaproblem, изпратено на 4 Feb 2009, 17:22


Не знам, но на мен MPLAB ми се видя доста тежка за начало, че и след това.
Защо не опиташ PicBasicPro (PBP) в Microcode Studio? Просто е като фасул, но върши работа дори и за проекти със значителна сложност, има голям набор от вградени функции - SPI, I2C, USART, USB, LCD(HD44780 съвместим), X10 и т.н.
Последните версии на компилатора имат библиотека за работа с float.


#4 от anrieff, изпратено на 5 Feb 2009, 02:14


Ами честно казано, просто не съм пробвал нищо друго. Първоначално исках да науча асемблера, пък той се оказа лесен и напълно достатъчен за задачката, която в крайна сметка си поставих.

Иначе за резистора - точно C2-10-2 се оказа :)


#5 от nemaproblem, изпратено на 5 Feb 2009, 12:26


При всяко положение асемблерът е много полезно нещо, аз също го използвам
в процедурите за обработка на прекъсвания.

Ето, например, как изглежда програмка на пикбейсик за изменение (посредством програмен ШИМ) яркостта на светодиод, свързан към portB.0, по хармоничен закон:

;*****************************
; PIC16F84A, примерно
j var byte
led var PortB.0
slow con 16

output led
while 1
led = ~led
pauseus (127 + sin j) * slow
led = ~led
pauseus (127 - sin j) * slow
j = j + 1
wend
;*****************************

На мен така ми изглежда доста по-кратко и прегледно, отколкото на асемблер.


#6 от anrieff, изпратено на 5 Feb 2009, 17:21


Оо, определено :) Моя код ще настръхнеш като го видиш (макар, че - той е основно една голяма lookup таблица :) )
Иначе определено ще го погледна този пик бейсик, много по-добре изглежда. Мерси за инфото!


#7 от tok i jica, изпратено на 9 Feb 2009, 23:44


Какво точно искаш да направиш?


#8 от anrieff, изпратено на 10 Feb 2009, 00:00


Тайна :) Ще пиша, като го завърша :)


#9 от tok i jica, изпратено на 12 Feb 2009, 10:09


Не играеш честно :P Кажи поне има ли ESC :D


#10 от anrieff, изпратено на 16 Feb 2009, 00:55


Дори не знам какво е ESC :)


#11 от tok i jica, изпратено на 16 Feb 2009, 13:47


http://www.stefanv.com/rcstuff/escprimer.html
http://tehdevs.net/2007/11/03/diy-electronic-speed-controller/

Примерно :)


#12 от anrieff, изпратено на 16 Feb 2009, 22:29


Аха, разбрах какво имаш предвид. Не, нямам намерение чак да командвам моторчето с ШИМ, не ми трябва за проекта, а и както ползвам релета, не знам дали не би било вредно за тях да ги превключвам по много пъти в секунда.

Между другото, докато запоявах H-моста, първоначално направих един тест само с едно реле (исках да пробвам дали PIC-а е достатъчно мощен да го управлява). Запоих го, и го вързах, без да искам на пин C0, вместо на C4, както бях замислил първоначално. Програмата в PIC-а все още беше онази тестовата, със пулсиращите диодчета. Пин C0 е този към първия диод. Реално, това, което се получи, беше, че управлявах релето със ШИМ при честота към 3-4 килохерца. Горкото реле почна да жужи жаловито, усилвайки силата си в средата на цикъла, когато импулсите са най-широки. Направо като някакво говорителче беше. Не знаех, че може да се злоупотребява по такъв начин с релетата :D


#13 от tok i jica, изпратено на 10 Jun 2009, 11:37


Какво става с проекта, върви ли?


#14 от anrieff, изпратено на 11 Jun 2009, 18:30


Зарязал съм го до някой слънчев ден, че нямам никакво свободно време. Реших да добавя и някакво LCD дисплейче (нещо двуцифрено, най-стандартно), ще видим как ще стане.




Име:
За връзка: (Линк към вашия блог/сайт/e-mail; незадължително)
Вашият коментар:

Сметнете израза: ceдeм минус oсемдeсeт и чeтири = (въведи с цифри)


<<

Valid XHTML 1.0 Strict