Отговори на тема  [ 18 мнения ]  Отиди на страница 1, 2  Следваща
Мерене на обороти 
Автор Съобщение
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Вто Ное 16, 2004 3:29 pm
Мнения: 108
Местоположение: София
Мнение Мерене на обороти
Имам следната задача да замеря обороти за една минута.
Първоначално го направих като ползвам таймер на PIC18 процесор.
Меря за някакъв период да кажем 500ms и смятам колко е за една минута.
Това работи но за по високи обороти ако оборотите са под 200 започва да не е точно.

Чудя се как да реализирам този оборотомер да може да хваща и 10 оборота.
Измислих да меря дължината на импулса като в първия момент ми дойде следното
хрумване:

1. Нулирам таймера и му сетвам максимална стойност.
2. Разрешавам прекъсване и чакам да се активира препълване
тоест да хване следващия импулс.
3. При активиране на прекъсването си запомням текущо колко ми е времето
с точност 100us.
4. Нулирам пак таймера и му сетвам максимална стойност.
5. Разрешавам прекъсване и чакам да се активира препълване.
6. При активиране на прекъсването меря колко е текущото време вадя от
първоначалното и така получавам с точност 100us колко е дълъг сигнала
и изчислявам колко оборота са за минута и показвам на екрана.

Чудя се дали има по добър метод от този който описах.
Може да се ползва и PORTB interupt on change но мисля че пак
ще е същия принцип.

Някой ако го е правил това моля да сподели как най добре и лесно става с PIC18/16 процесори.


Пон Апр 07, 2008 10:33 am
Профил WWW
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пет Фев 17, 2006 9:17 am
Мнения: 765
Местоположение: Стара Загора
Мнение 
Заинтересувай се от CCP (capture-compare) перифериите, те са точно за това


Пон Апр 07, 2008 11:11 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Вто Ное 16, 2004 3:29 pm
Мнения: 108
Местоположение: София
Мнение 
Разгледах го но то само улеснява че детектва rising/falling edge.
Иначе процеса пак е същия взимаш си текущото състояние на
таймер брояча.

Понеже меря на RA4 честота и брояч за да ползвам CCP-то дали
е добра идея да свържа директно RA4 към CCP1 вход на процесора?

Някой връзвал ли ги е така паралелно тия два входа?


Пон Апр 07, 2008 4:18 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
Очевидното решение е да мериш период и да смяташ
от него честота, когато става дума за ниски честоти, какъто е случаят.
Последните 20+ години вече губя бройката на този си отговор на този
въпрос - е, сега архивиран във форума белким хване по-добре :) .

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Пон Апр 07, 2008 8:19 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Пет Юни 03, 2005 9:39 pm
Мнения: 2277
Мнение 
Погледни една блокова схема на честотомер. Каво ли ще се получи ако управляваш gate с входния сигнал, а на входа подадеш някакъв сигнал с точно определена честота ? Остава да сметнеш дали при максимални обороти грешката, която се получава не става много голяма.


Пон Апр 07, 2008 9:48 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пет Фев 17, 2006 9:17 am
Мнения: 765
Местоположение: Стара Загора
Мнение 
tgi написа:
Очевидното решение е да мериш период и да смяташ
от него честота, когато става дума за ниски честоти, какъто е случаят.
Последните 20+ години вече губя бройката на този си отговор на този
въпрос - е, сега архивиран във форума белким хване по-добре :) .


Не се надявай, вече го има архивиран само в този форум поне на 3-4 места :) И пак не хваща :) Съжалявам :cry:


Вто Апр 08, 2008 10:24 am
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Вто Ное 16, 2004 3:29 pm
Мнения: 108
Местоположение: София
Мнение 
Така изясни ми се :) и точно какво да ползвам от CCP модула на процесора.

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

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

Мога да сложа и по нисък кварц и да ползвам външен такт само за таймера за CCP,
но ми се ще да мина без него.

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


Вто Апр 08, 2008 10:25 am
Профил WWW
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Вто Ное 16, 2004 3:29 pm
Мнения: 108
Местоположение: София
Мнение 
Сега си видях грешката като съм добавял препълването не съм го кастнал към
unsigned long и то си го е смятало като int и не е слагало правилно препълването.

Всичко си работи :) так че съм много доволен.

Дано да послужи този разговор на други които правят първи стъпки в CCP capture.


Вто Апр 08, 2008 10:46 am
Профил WWW
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Нед Юли 29, 2007 2:41 pm
Мнения: 610
Мнение 
Ся се сетих, че обороти се мерят и онлайн: http://www.i_dachev.homo.com :)

_________________
Тя простотията по хората ходи


Сря Апр 09, 2008 1:05 am
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Сря Апр 05, 2006 9:52 pm
Мнения: 877
Местоположение: Разград
Мнение 
bongo-bongo написа:
Ся се сетих, че обороти се мерят и онлайн: http://www.i_dachev.homo.com :)


Не виждам раздел в този форум, където да има място за такива включвания, а ако форума е сериозен, те е ясно
какво би следвало за автора. Най лесно е да се из****ш на метеното.


Сря Апр 09, 2008 10:02 am
Профил
Ранг: Новодошъл
Ранг: Новодошъл
Аватар

Регистриран на: Вто Ное 16, 2004 3:29 pm
Мнения: 108
Местоположение: София
Мнение 
Помогнах му един път на бонго бонго да си намери нещо в нета и големи благодарности ми писа.
Но явно е сметнал че моите въпроси заслужават такива отговори, знам ли той си се излага сам.

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


Сря Апр 09, 2008 2:58 pm
Профил WWW
Ранг: Минаващ
Ранг: Минаващ
Аватар

Регистриран на: Пон Ное 26, 2007 11:34 pm
Мнения: 95
Местоположение: Видин
Мнение 
Той имаше в предвид брояча долу дето брои завърнтанията. :D


Сря Апр 09, 2008 4:15 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пет Фев 17, 2006 9:17 am
Мнения: 765
Местоположение: Стара Загора
Мнение 
http://www.mcu-bg.com/mcu_site/viewtopi ... 0%E8%EE%E4

Тук темата е разнищена доста подробно. (за честота/период)

Бонго, точно от тебе такава простотия не очаквах 8O Направо си за баннн, мен ако питат


Сря Апр 09, 2008 4:20 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Съб Фев 18, 2006 11:55 pm
Мнения: 1301
Местоположение: София
Мнение 
Бонго,

Язък ти за подписа дето си си го сложил...

_________________
Някой ден и костенурките ще се научат да летят...


Сря Апр 09, 2008 5:39 pm
Профил ICQ
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Окт 13, 2007 12:12 pm
Мнения: 712
Мнение 
А стига бе, "Сухари" такива! А ми човека явно искаше да разведри темата. Я малко по-весело, да не би да е показал до сега лоши намерения, я му вижте постовете! :D


Сря Апр 09, 2008 6:21 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 18 мнения ]  Отиди на страница 1, 2  Следваща

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 2 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни