|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 4:22 pm
| Автор |
Съобщение |
|
ike
Ранг: Форумен бог
Регистриран на: Пет Фев 04, 2005 9:59 pm Мнения: 6019 Местоположение: София
|
 Re: Относно микроконтролер
 |  |  |  | stunito0o0 написа: Поиграх си още малко и оправих грешките сега не би трябвало да имаш проблем да го подкараш  int ESCPin = 2; // ESC svyrzano kym cifrov pin 2 double pulseWidth; // promenliva za ESCPulse finkciyata void setup () { pinMode (ESCPin, OUTPUT); // opredelya pin 2 kato izhod } void loop () { l1: pulseWidth=1.35; //zadava nachalna stoinost na skorostta scanf("%f",pulseWidth); //chaka vuvejdane na nova stoinost ot klaviaturata if(pulseWidth<=1.34) //ako stoinostta e po-malko ot 1.35 { pulseWidth=1.35; // q vrushta obratno } if(pulseWidth>=1.75) //ako stoinostta e poveche ot 1.75 { pulseWidth=1,75; // q vrushta obratno } digitalWrite (ESCPin, HIGH); // vklyuchva ESC delayMicroseconds (pulseWidth); // izchakva mikrosekundi digitalWrite (ESCPin, LOW); // izklyuchva ESC delay(20); goto l1; } |  |  |  |  |
Имам малко въпроси. Можеш ли да отговориш? Ако съм разбрал правилно с тази програма трябва да генерираш импулси с ширина от 1.35 милисекунди до 1.75 милисекунди. 1. Разбираш ли добре, какво прави програмата? 2. това " l1: " и " goto l1; " ако се махне програмата ще работи ли по същия начин? 3. това " pulseWidth=1.35; //zadava nachalna stoinost na skorostta " ако се махне програмата ще работи ли по същия начин? 4. scanf("%f",pulseWidth); //chaka vuvejdane na nova stoinost ot klaviaturata какво ще се случи ако потребителя въведе стойността след половин час? Контролера през колко милисекунди очаква входния импулс за да работи нормално? Какво ще се случи ако потребителя вместо число си въведе името? 5. if(pulseWidth<=1.34) //ako stoinostta e po-malko ot 1.35 ще се коригира ли стойността до 1.35 ако потребителя въведе 1.3401 от клавиатурата? 1.3401 по малко ли е от 1.35? 6. if(pulseWidth>=1.75) //ako stoinostta e poveche ot 1.75 ако потребителя въведе точно 1.75 ще се изпълни ли това присвояване " pulseWidth=1,75; // q vrushta obratno " и какво ще промени след като се изпълни? Има ли значение, че си написал запетайка вместо точка? 7. delayMicroseconds (pulseWidth); // izchakva mikrosekundi има ли някаква разлика между микросекунда и милисекунда? pulseWidth ти е от тип double, а функцията delayMicroseconds() очаква променлива от тип unsigned int , какво толкова лошо може да се случи когато подадеш тип double на функция, която очаква тип unsigned int? От колко микросекунди нагоре функцията delayMicroseconds() започва да работи така, както очаквате?
_________________ Warriors of the Night, ASSEMBLER!!!
|
| Сря Апр 11, 2012 5:39 am |
|
 |
|
stunito0o0
Ранг: Минаващ
Регистриран на: Нед Мар 25, 2012 4:01 pm Мнения: 44
|
 Re: Относно микроконтролер
Ок пояснявам 1.goto е етикет който връща програмата до зададено място.Без него би трябвало и само да се връща защото "loop" функцията по принцип е за нещо повтарящо се,но понеже никога не сам го слагал на ардуино платката не знам дали важи и за този компилатор(май не обясних много добре  ) 2.ESC-тата ,прочети, как работят.Микропроцесора им се нуждае от 1 сигнал(с дължина м/у 1 и 2,но за по сигурно 1,2 до 1,8 мс) на всеки 20 мс.Тези сигнали се разчитат както писах назад във темата като 1-1,2 мс сигнал - motor off(0%) 1,8-2 мс сигнал - motor on(100%) следователно със сигнал от 1,4-1,5 мс -мотор ще работи на 50%  При безсензорните бръшлеси ,ако дадеш газ до дупка изведнъж моторът ще започне да с чуди на къде да тръгне(затова е зададена начална стойност от 1,35 мс,която има за задача да върти мотора на бавни обороти) 3.Ако си въведе името най-вероятно ще забие(още не съм я доизпипал толкова). А за по късното въвеждане сега търся туториали , как да накарам програмата да очаква въвеждане опрделено време и ако не се въведе да въведе да продължи изпълнението си. 4.Ако потребителят въведе 1.34 или по-малко сойността ще се коригира до 1.35 ,но ако въведе 1.34006 примерно няма да се коригира ще си остане така но толкова малко разлики не са от значение. 5.Няма да се замести, ако има зададена константна стойност- const(const int pulseWidth=1.35),иначе ако по-надолу в програмата се въведе друга стойност ,нововъведената замества старата. 6.Да има разлика ,признавам ,че съм сбъркал пишейки кода,но няма нужда да се дразниш за толкова малки и лесно поправими грешки. ПС.Има още малко да се поработи върху кода , но както казах назад той е само за пример.
|
| Сря Апр 11, 2012 10:33 am |
|
 |
|
radolin
Ранг: Форумен бог
Регистриран на: Пон Дек 19, 2005 12:21 pm Мнения: 1037
|
 Re: Относно микроконтролер
Това нали код за Ардуино пишете? Интересно ми е тази клавиатура къде е включена в ардуиното и този scanf от къде чете?
|
| Сря Апр 11, 2012 10:48 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: Относно микроконтролер
Млъкни бе, не ме ядосвай...
|
| Сря Апр 11, 2012 10:53 am |
|
 |
|
stunito0o0
Ранг: Минаващ
Регистриран на: Нед Мар 25, 2012 4:01 pm Мнения: 44
|
 Re: Относно микроконтролер
когато е свързан към компютъра въвеждаш от там
|
| Сря Апр 11, 2012 11:04 am |
|
 |
|
stunito0o0
Ранг: Минаващ
Регистриран на: Нед Мар 25, 2012 4:01 pm Мнения: 44
|
 Re: Относно микроконтролер
Абе я не се прави на важен.ОМРЪЗНА МИ ВЕЧЕ ОТ ГЛУПАЦИ. Ей то в български форум да пишеш си е мъчение .... ТЕМАТА Е ЗА ТРИЕНЕ
|
| Сря Апр 11, 2012 11:09 am |
|
 |
|
radolin
Ранг: Форумен бог
Регистриран на: Пон Дек 19, 2005 12:21 pm Мнения: 1037
|
 Re: Относно микроконтролер
Това, че ще свържеш Ардуиното с компютъра не означава, че по някакъв магически начин STDIN ще се пренасочи към него. Реално то изглежда за компютъра като един преходник USB->сериен порт. Съответно от страната на компютъра комуникацията става чрез примерно терминална програма като minicom или hyper terminal. От страната на Ардуиното трябва първо да инициализираш серийния порт с желаната скорост, брой битове и т.н. а после да полваш модула Serial и по-точно Serial.read и Serial.print.
|
| Сря Апр 11, 2012 11:21 am |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
 Re: Относно микроконтролер
От самото начало темата си е за триене. Наистина е мъчение да се правиш на интересен с неща, които очевадно не разбираш и да се налага да даваш отговори на смислени въпроси, които също не разбираш.
|
| Сря Апр 11, 2012 11:55 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
 Re: Относно микроконтролер
ахахах... Гледай само, някой ден да не ти се случи да работиш с мен, че ще ти е много трудно. Особено ще ти е трудно, пък ако вземеш, че ми станеш началник, щото те такива бастуни като теб само за това стават..... 
|
| Сря Апр 11, 2012 12:00 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: Относно микроконтролер
Абе Лео, що дразните хлапето? На него му е простено, още не е наясно с много неща, но иска да се занимава с големи работи. Нормално! Кой на неговата възраст не е бил така?
|
| Сря Апр 11, 2012 12:06 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
 Re: Относно микроконтролер
Де да беше така Миро... Той е просто поредния форумен кибик, който се опитва да се прави на интересен използвайки анонимността във форума. Щего преживеем...
|
| Сря Апр 11, 2012 12:27 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: Относно микроконтролер
Лео, слез на Земята... форумните кибици сме ние. Това трябва да ми е пост 3000 и твоите не са малко  Хлапето просто иска да си накупи разни части, да се пробва да ги сглоби и ако тръгне всичко да може да се изфука... Спомни си, че някога и ние сме карали пубертет 
|
| Сря Апр 11, 2012 1:10 pm |
|
 |
|
Desert Leo
Ранг: Форумен бог
Регистриран на: Чет Фев 10, 2005 3:25 pm Мнения: 5677 Местоположение: София
|
 Re: Относно микроконтролер
Аааа, тук ще възразя. Че понякога пишем излишни неща е вярно. Но и ти и аз и повечето съфорумци виждам следват линията да помогнат, когато могат. Аз лично, когато питам се опитвам да дефинирам ясно питането си, за да получа ясен отговор. Никога не съм си позволявал да питам за нещо и да възразявам на отговарящите по подобен арогантен начин. Още в началото му написахме, че задачата е трудна. Опитахме се да му подскажем правилния път. Ефект никакъв!!! Човека си мисли, че може да програмира и за него този проект започва (и ще завърши) с писане на нещо като сорс. А без работещ носител (хеликоптер), всичко следващо е безсмислено. Отделно, че четиривинтовата схема е доста сложна за стабилизация и управление. Аз бях препоръчал да си купят готов носител. По Коледа подарих подобен хеликоптер на племенника. Хеликоптера още е цял и хлапето (5 г.) го управлява перфектно. Но е малък и няма място и товароподемност за още джаджи. Допълнително, управлението е по IR-канал. Когато го купувах, видях доста по-големи машине с RC-управление за около 100+ лв. Ето от тук могат да тръгнат, защото е ясно, че своя машина няма да могат да направят. Нерви ме това, че цялото им поколение е такова (с много малки изключения). Идват при мен на стаж от няколко години от няколко софийски "елитни" професионални гимназии в сферата на електрониката и комуникациите, та знам. Ама при мен не е като да се изявяваш анонимно във форум. Като можеш - давай! До сега и един не се е осмелил да напише и ред. За шлосерски умения няма и да споменавам, а СМД компоненти не са и виждали, камо ли да ги запояват.
|
| Сря Апр 11, 2012 3:11 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
 Re: Относно микроконтролер
Да, опитахте се да предложите... само че предложението ви очевАдно не беше прието. И друг път съм казвал, че за да научиш някого на нещо е умение (даскалък). Няма никакво значение колко голям специалист си. В случая на теб знанието ти пречи да бъдеш даскал. И мен да ме вкараш в някоя лекция, която половината време ти обясняват колко си тъп, а другата половина колко тежка е дисциплината - и аз ще се държа арогантно. Хайде, може би няма да се държа арогантно, защото сме възпитавани по едно друго време. Със сигурност обаче няма да ти стъпя на втора лекция! Не те упреквам. Просто поколението след нас е такова каквото е... Може би и ние имаме вина за това, а може би не. Няма значение, не ми се коментира повече. Предпочитам тия усилия да бях ги вложил в овладяване на даскалъка, щото и аз не съм много добър в тая област 
|
| Сря Апр 11, 2012 4:04 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
 Re: Относно микроконтролер
Миро, в даскалъка има едно нещо наречено "prerequisites" и без него даже няма да те пусне даскала да му влезнеш на първата лекция, какво остава пък да ти даде шанс за втората. Т.е. за да вземеш примерно "Circuits and Electronics" трябва преди това да си взел "Advanced Physics" и "Differential Equations". Хората не са го измислили това, за да казват на другите колко са тъпи и колко не разбират, а за да предпазят тези, дето имат основите за дадения предмет да слушат по време на лекцията тъпи въпроси и да не си губят времето с хора, които не ходят по земята. Т.е. за да има добро обучение не е необходим само добър даскал, а и добри ученици. Затова има и входни изпити, за да не се налага в предмета по висш пилотаж да си обясняваме неща, дето са 5 нива по-надолу от тоя предмет. Затова и образованието е направено на стъпки, иначе всички щяха направо в последната година на университета да отиват и да почват направо с последния специален предмет и после направо да им връчват дипломите. Така че правилното отношение трябва да го има и при двете страни, защото обучението е интерактивен процес, а не просто слушане какво говори даскала  .
|
| Сря Апр 11, 2012 4:30 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 11 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|