Покажи участието

От тук може да видиш всички публикации на този потребител.


Публикации - yasko

Страници: 1 ... 26 27 [28] 29 30 31
406
Време е да продължа с програмата за размигване на светодиода :)
Борислав е качил една примерна програма: my_test
Позволих си да корегирам и тествам някои неща и сега програмата доби следния вид:


#include <avr/io.h>
#include <util/delay.h>
#define F_CPU 8000000UL  // 8 MHz

//функция генерираща закъснение в диапазона 1 -65535 ms
void delay_ms(unsigned int ms)
{

while (ms>0){
_delay_ms(1);
ms--;
}

}

   
int main(void)              // начало на основната програма
{
   
 
    DDRD = 0xFF;            // Всички изводи на порта D трябва да се конфигурурат като изходи

    while (1) {              // Безкраен цикъл

          PORTD = 0xFF; // установяваме "1" на всички линии на порта D

  delay_ms(250);   // Чакаме 0.25 сек.

          PORTD = 0x00;  // установяваме "0" на всички линии на порта D

  delay_ms(250);   // Чакаме 0.25 сек.

}       // закриваща скобка на безкрайния цикъл

}      // Закриваща скобка на основната



Утре ще продължа с коментарите и разясненията по програмата.

407
Line Tracer / Робот с фотодатчик за следене на линия
« -: Септември 03, 2007, 10:19:42 pm »
Няма проблем да се свържат по този начин, разбира се после в програмата това  трябва да се има предвид.
Относно кварца, възможно е процесора да работи и без кварц, като ползва вградения в него RC генератор, недостатъка в този случай е по-ниската стабилност на опорната честота, но това не винаги е толкова важно.

408
Литература / Какво можем и трябва да измерваме
« -: Септември 03, 2007, 10:34:32 am »
Пак ще разводним малко темата, но транзистора си NPN и с него всичко е ОК. Според ме обяснението е следното: мултицета не мери защото при фототранзистора нямаш база и сътответно няма откъде да протече базов ток и да стане измерването.

409
Литература / Въпроси и дискусии
« -: Септември 03, 2007, 10:17:17 am »
За да не спамя темата за градивни елементи, ще дам коментар тук относно ограничващия резистор през светодиодите. Иван правилно е усетил че при сметките трябва да се има предвид пада на напрежение върху светодиода. Той от порядъка на 2-3V и зависи от  типа светодиода, но не зависи много от тока през светодиода, защото както е обяснил spp той е нелиннен елемент и реално се управлява с ток, а не с напрежение.
 Примерно при белите и сините светодиоди е 3V, така че ако искаме да пуснем ток 10mA при 5V сметката е следната: вадим пада върху диода от захранващото напрежение и получаваме 2V разлика, които трябва да "обере" резистора. След това делиме 2V на желания ток (10mA) и получаваме че стойноста на резистора трябва да е 200 ома.

410
Електроника / Информация за RPM
« -: Август 31, 2007, 10:16:17 am »
И двата датчика, които объсъждаме реално представляват приемници за дистанционни управления - RPM серията е на фирмата ROHM:
http://www.rohm.com/products/shortform/28remote/remote_index.html
и 2 от техните модели могат да се намерят в магазина на фирма Комет,
RPM7138 (за 38kHz) и RPM7140 (за 40kHz)
TSOP -серията е на фирмата Vishay
http://www.vishay.com/ir-receiver-modules/

411
Робо-сумо / Моят Сумобот
« -: Август 31, 2007, 09:46:04 am »
Няма нужда от интегрираща верига, това си го прави датчика, той си има всичко необходимо в него и когато се получи модулиран светлинен сигнал с определената честота и ниво, изхода минава в 0, иначе седи в единица и докато има сигнал изхода е във фиксирано ниво, независимо че на вход има модулиран сигнал.

412
Робо-сумо / Моят Сумобот
« -: Август 31, 2007, 12:53:38 am »
Точно така, просто TSOP  е на една фирма а RPM на друга, иначе вършат едмо и също нещо. Чудесно щом има схеми :)

P.S.
@sv_shady ти си обяснил нещата:
http://www.robotics-bg.com/forum/viewtopic.php?p=495#495
сори че се повтарям, май много ми се спи :)

413
Робо-сумо / Моят Сумобот
« -: Август 31, 2007, 12:44:07 am »
Съвсем накратко, защото виждам че стана малко объркване.
Този тип датчици реагират на модулирана светлина, това е направено с цел да се постигне  по голяма разстояние на действие и стабилност.
Имат две състояния на изхода, лог 1 (5V), когато няма сигнал и лог 0 (0V) когато има сигнал (модулирна светлина). Има различни модели в зависимост от честота на която са настроени да реагират 36,38, 40,42 kHz (а не MHz)
За да се направи модулация на излъчената светлина, необходимо да се модулира тока през светодиода, най-просто става това като той се захрани с генератор на правоъгълни импуси със съответната честота.
Примерно за RPM-7140 трябват 40kHz, затова единия вариант е микроконтролера да генрира тази честота, другия е да се ползва външен генератор.
Сега може би се досещате как работи ИЧ локатора, светодиода излъчва модулирна светлина, когато наблизо има обект светлината се отразява и се връща към примника, който сработва и изхода от 5V става 0V. За да се регулира обхват на действие трябва да се регулира тока през светодиода, тъй като чуствителността на датчика не може да се регулира.
Основнота употреба на тези датчици е като приемници на познатите на всички дистанционни управления. За да може да се предаде полезна информация основната честота на модулация (наречена носеща) се модулира допълнително с полезния сигнал.  Стана малко сложно с тези модулации но принципа е същия, който се ползва при радиопредаването, само че тук вместо радиовълни се ползва светлина.
Хайде стига че пак се увлякох, ще драсна скоро някоя друга схема на свързване.

414
Робо-сумо / Моят Сумобот
« -: Август 30, 2007, 12:03:04 am »
Бориславе, позволи ми да направя някои забележки по товойта схема за ИЧ локатор.
1. Така както си свързал базата на транзистора директно към порта, не е добре трябва да има един ограничаващ резистор
2. Не ми хресва и връзването на самия TSOP, ще направя една схемичка, за да не пиша сега.
Има и още нещо свързна с принципа на работа на въпросния TSOP,  за да сработи, светлината трябва да е модулирана (конкретно в този случай 36kHz), да правиш модулацията софтуерно не е много удачно, вариант е да закачиш управлвнието на светодиода към някой от вградените таймери в процесора и той да прави модулацията автоматично, но това изисква управлението да бъде на точно определен пин. Друия вариант е да ползваш външна схена таймер от типа 555 за модулацията. Всъщност мисля да драсна една темичка по въпроса за ИЧ локаторите, и аз скоро мисля да си правя, намерих подобни елементи  RPM-7140 в магазина на Комет на добра цена <1лв. Повече информация за него тук

415
@професоре, нещо много сложно ги мислиш неща от 5 на 12V и т.н при това с постоянно напрежение от USB порта. Вземи потърси из нета има сумати схеми на такива устройства, даже си мисля че тук по нашите магазини се продаваше и кит.  И послушай хората за оптрона, така е сигурно че PC-то ще бъде в безопасност, ако толкова искаш да вземеш ток от PC,най добре да стане през галванично изолиран DC-DC преобразовател, казвам ти всичко това защото искаш да управляваш 220V консуматор чрез PC, всичко това изисква определени мерки за безопасност. Oсвен това като цяло дискусията е малко встрани от нашите занимания тук. Може да потърсиш информация тук, сигурно темата е дискутирана.

416
Стадо от BEAM роботи, това определено си струва да се види :)
Относно смисъла на OS, въпроса е че когато един робот стане по-сложен има нужда някой да управлява и споделя ресурсите на системата. Доколкото знам има си специализирани OS - така наречените RTOS (real time OS), предназначени за тези задачи, но това е въпрос на друга дискусия.

417
Идеята на kanadeca наистина е добра, хората обичат зрелища :) За да се намерят спонсори наистина трябват по сериозни проекти и другото важно нещо е да имаме необходимите знания и умения за реализация, в противен случай дори да разпологаме с пари пак няма да станат нещата. Сега сме в началото и проектите са сравнително елементарни а и подготовката на хората е различна, надявам се в бъдеще нещата да се развиват. За да разпаля въображението на младите таланти, ще кажа че мога да осигуря хардуерна платформа, достатъчно мощна и компактна, че да може да са експериментира с машинно зрение и други интересни неща, дори може да  се напрви и робот с Linux :)

418
Програмиране / Програматор PonyProg
« -: Август 27, 2007, 12:22:34 pm »
Първо няколко думи за програматорите и защо те са ни необходими в контекста на работа с микроконтолери. След като напишем дадена програма и компилираме получаваме поредица от машинни инструкции записани във файл (най често със разширение .hex) Тази файл всъщност представлява представлява превод на нашата програма на специфичния език на микроконтролера, така че той да може да я изпълни. Целта на прогрматора е да запише въпросната програма в енергонезависимата памет на микроконтролера (така наречения FLASH). Програматора е устройство, което представлява съвкупност от 2 части хардуер и софтуер. С помощта на хардуера се осъществява физическа връзка между MCU и PC, а софтуера управлява процеса на запис.
След тези уводни думи ще опиша накратко работата с известния програматор PonyProg и конкретно как да записваме MCU от серията AVR на фирмата ATMEL, към която спадат и ATMEGA процесорите.
PonyProg може да се изтегли от следната страница:
http://www.lancos.com/ppwin95.html ,последната версия е 2.07a
PonyProg предлага подръжка на много видове памети и MCU и два вида интерфейса за връзка чрез серийния и паралелния порт на PC. Паралелния порт е по удобен за работа тъй като позволява директна връзка със MCU, без да е неободимо да се конвертират нивата на сигналите.
След инсталирането на програмата е нужно да се направи калибрация и да се настрои интрефейса за връзка. Калибрирането става от меню "Setup->Calibration" като се следват инструкциите по екрана. Настройката на интерфейса става от меню "Setup ->Interface Setup", появява се един диалогов прозорез "I/O port setup" и него избираме режим "Parallel" и опция от падащото меню "AVR ISP I/O"  и накрая избирам паралелния порт с който да работим (обикновено това е LPT1)
След като приключихме с тези настройки, остава да укажем фамилията  и типа процесор с който ще работим. Това става от двете падащи менюта от оснвния прозорец на програмата. От първия избираме "AVR micro", а от втория конкретния модел в  нека в нашия пример това  е ATmega8. С това софтуера е настроен и сега трябва да се преборим  с хардуера. Има няколко различни схеми за свързване, засега ще се спрем на най простата, която е дал Борислав в този негов постинг:
http://www.robotics-bg.com/forum/viewtopic.php?p=490#490
Тя позволява директна връзка (през резистори, моля не си ги спестявайте!) между MCU и PC. Каква е идеята? Микроконтролера има вграден протокол за прорамиране през специализиран сериен интерфейс. Той ползва 5 връзки със следните имена SCK, MISO,MOSI, RESET и разбира се GND. Тези сигнали са изведени на пиновете на MCU и необходимо да се свържат съгласно указаната схема към паралелния порт. PonyProg управлява съответните пинове на пралалелния порт като по тозиначин реализира протокола за запис на паметта на микроконтролера.
Засега спирам и в следващите постинги ще обясня по нататъшните стъпки. Успех на всички :)

419
Електроника / Аналози на транзисторите?
« -: Август 26, 2007, 07:35:07 pm »
Не се наложи да прибегна до моя стар справочник, написах на кирилица КТ3102 в Google и изкочиха доста линкове за аналози, този е добър:
http://www.dectel.ru/analogues/transist/kt3102.shtml
Като аналог дават BC546, BC547.

420
Чудесни новини :) Разбира се че участвам и ще помагам с каквото мога.
Наистина е много хубаво да имаме място за срещи и работа, а и подкрепата на моделистите ще е ценна защото по роботите има не малко механика.  Е разбира се за хората извън София ще е трудно да участват, но нали има интернет, а има поща и куриери за обмен на материяли :)

Страници: 1 ... 26 27 [28] 29 30 31