Контролери > Други контролери

Контролер на базата на MSP430 на Texas Instruments.

(1/6) > >>

bateAz:
Луд умора няма.

Имам намерение да разработя и направя контролер за роботи на базата на микроконтролер от фамилията MSP430.
Какви са предимствата на тези контролери: Първо, много ниска консумация. Това позволява доста по-дълъг живот на батерията, когато роботът не се движи. Второ, уникална архитектура, която позволява много бърза реакция на прекъсвания. Това позволява лесно да се реализира програма, която следи и управлява едновременно няколко процеса - нещо, което за много "програмисти" е тежка задача. Трето, доста разнообразна и развита периферия, в частност прецизни 12-битови ADC и DAC ( Texas Instruments са лидерите в интегрирането на прецизна аналогова периферия в жифрови схеми ), компаратори, операционни усилватели, комуникационни портове и др. Четвърто, сравнително добра достъпност на чипове и инструменти за разработка.
Какви недостатъци се забелязват "на пръв поглед": Първо, няма удобна среда за разработка на "роботски" прилижения и ще трябва да се прави. Второ, MSP430 не е толкова полулярен, колкото например PIC или AVR на Atmel.
Идеята е контролерът да замени популярните Arduino ( и други ), като предложи повече функционалност и (дай Боже!) повече простота на използването.
Лично аз не очаквам проблеми нито с хардуера, нито с фърмуера на творението. Не ми е сефте да правя подобни изделия.
Та въпросът ми е да се захващам ли, или не. Ясно ми е, че това не може да е задача за един човек ( при това - хоби ) и ще трябва да се включат доста доброволци, най-вече с идеи и с писане на софтуера за PC. Ще трябват и доста консултации и обсъждания за това какво да се включва в тези контролери и как да се прави. И не на последно място ще трябват и "доброволци", които да опитат поведението на отрочетата при управление на реален обект (робот някакъв) и да дадат оценка и предложения.
Анкета няма да пускам, който има интерес, да пише в темата!

viko:
Аз имам интерес и бих желал да помогна  :)

Моя опит с TI, макар и неголям, показва, че са страхотни контролери. Също така на Ардуиното не съм фен и всички негови заместители са добре дошли.

Конкретно с какво мога да помогна, в зависимост от времето, което е необходимо:
Реалните тестове - Контрол на робко 01, като тук имам доста идеи, за начини на управление. Робо-сумо, следене на линия, умален модел на робот "разносвач" за завод и още доста.
Софтуера за PC - не. Тук си нямам и най-малка представа, тъй като това ми е малко далечко от интересите. Евентуално мога, а ако има кой да помогне малко - сигурно, да направя сайт.
Фърмуера - да, но по-скоро съм готов да надраскам примерни програми. Тук трябва да се отбележи, че се занимавам само с Асемблер, което може да е проблемно, тъй като доста хора ползват C.
Идеи - да се дава акъл е най-лесно. Все пак имам някои виждания:
- целият контролер да е на отделни модули. Един "главен" - този с микроконтролера, захранването и т.н. и останалите - за управление на стъпкови двигатели, за обикновенни двигатели и прочие.

bateAz:
Малко по малко ще си нахвърлям идеите. Разделям целия проект на 3 основни части: хардуер ( т.е. платка с налепени части ), фърмуер ( т.е програмата за микроконтролера ), и софтуер ( т.е. поддържащият софтуер за персонален компютър ).
Тъй като е най-лесно, ще започна със хардуера:


                      ХАРДУЕР

1. Контролерът ще е едноплатков с възможност за евентуално разширение чрез
допълнителни платки / модули. Все пак базовата функционалност на контролера
ще се осигурява от основната платка. Всички споменати по-долу функционалности,
с изключение на изрично указаните като "външни", се намират на основната
платка.
2. Контролерът ще се захранва от една литиево-йонна акумулаторна батерия
(LiON), 4 броя никел-метал хидридни акумулаторни батерии (NiMH) или 3-4
алкални или въгленово-цинкови незареждаеми елемента. Захранващите елеметни
ще се монтират в гнездо, извън платката на контролера. Връзката между
батериите и контролера ще е с куплунг. Всички други необходими захранващи
напрежения ще се изработват на платката на контролера.
3. Контролерът ще има възможност да се захранва и от Mini USB куплунг от
PC или 5V DC адаптер с USB куплунг. Този режим на захранване ще се ползва
само за програмиране или тестове от PC или за зареждане на акумулаторите.
4. Контролерът ще може да зарежда акумулаторните батерии, с които се
захранва. Типът на акумулаторните батерии ще се задава програмно.

5. Контролерът ще има следните комуникационни интерфейси:
  - USB device port за връзка с PC.
  - един сериен интерфейс за връзка с външен модул със скорост до 115.2
kbps ( BlueTooth, GSM module, RF, wiFi )
  - един сериен интерфейс за връзка с външен модул със скорост до 19.2
kbps ( Bluetooth, GSM, GPS )
  - един SPI.

6. Контролерът ще има следните входове:
  - 4 аналогови входа с обхват 0 .. 2.5 волта
  - 8 цифрови входа с възможност за прекъсване при промяна на състоянието на
всеки вход и възможност за PullUp на всеки вход
  - вътрешни сензори за напрежението на батерията и околната температура
  - 3D акселерометър

7. Контролерът ще има следните изходи:
  - 2 броя канали за управление на 4 фазни стъпкови мотори с ток на фаза до
2А и честота на превключване на фазите до 500Hz (униполярни намотки, 4V)
  - 2 броя канали за управление на 4 фазни стъпково мотори с ток на фаза до
2А и честота ма превключване на фазите до 500Hz (биполяни намотки). Същите
могат да се ползват и като управление на 4 DC мотора.
  - 4 изхода "отворен колектор" за ток до 1А и напрежение до 30 волта
  - 2 аналогови изхода с напрежение 0 .. 2.5 волта
  - три светодиода за индикиране на "нещо"

8. Всички входове и изходи ще бъдат изведени на куплунзи.

9. Контролерът ще има 2 куплунга за разширение за свързване на външни модули.
На тях ще бъдат изведени захранващо напрежение, SPI шина и цифрови I/O.

10. Контролерът ще има RTC ( Real Time Clock )
11. Контролерът ще има енергонезависима памет за съхранение на потребителски
данни / програмни алгоритми.

По предварителни оценки контролерът ще има размери около 90 Х 70 mm.
По предварителни оценки цената на контролерите в началния етап ще излезе около
100 - 150 лева. По-късно може да спадне до 60 - 90 лева. При промяна в
заданието ще има промяна и в цената (логично !).

viko:
Бих казал, че е страхотно и наистина е така! АЗ лично, бих го закупил, доста неща има и нищо излишно. Става за изключително прости, но и сложни проекти.

За кой конкретен микроконтролер става въпрос?

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

Поздрави!

bateAz:
Там е въпросът, че засега все още ми е трудно да кажа с кой контролер ще бъде. Раздвоен съм между MSP430F2618TPNR ( 80 pin ) и MSP430F5529. Предимството на първия е, че е "изгладена" платформа и на него голями проблеми няма. Предимството на втория е, че има вграден USB порт и е малко по-бърз. Освен това е и малко по-евтин, въпреки, че има и USB. Недостатъкът му е, че е сравнително нова разработка и силицият му още н е изчистен от бъгове. Някои от тях са отвратителни! Освен това вграденият USB порт ще иска и USB стек, който не е много толерантен към управление на девайси в реално време. Така че, засега май върви към '2618 + FTDI.
Реално има и трети вариант MSP430F6638, ама той е толкова нов, че засега има само мостри. И е не по-малко бъгав от '5529. Тайната ми надежда е, че с течение на времето проблемите ще намалеят. Иначе то на днешно време контролер без бъгове ( упс, errata ), няма.
Сега все още съм на етап "събиране на мнения", че веднъж решиш ли, после по-трудно се прави завой.
И си мисля за фърмуера ... Като недраскам нещо по-завършено, ще се постна.

Навигация

[0] Списък на темите

[#] Следваща страница

Премини на пълна версия