Отговори на тема  [ 58 мнения ]  Отиди на страница Предишна  1, 2, 3, 4  Следваща
Да се похваля малко. 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 10, 2005 3:25 pm
Мнения: 5677
Местоположение: София
Мнение Re: Да се похваля малко.
Това се нариче естествен подбор, бре Бонго...


Пет Фев 12, 2021 11:44 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 03, 2005 2:21 am
Мнения: 12765
Местоположение: София
Мнение Re: Да се похваля малко.
pipilica написа:
Но имам чудене как да разбира ардуиното че е запалил, единствено се сещам да следи напрежението на едната фаза и ако мине някаква граница значи мотора работи, щото и на стартер пак вдига напрежение.

Измерваш честотата на кривия ток. Генераторът гарантирано не може да достигне 50Hz на стартер.


Пет Фев 12, 2021 12:07 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Чет Апр 16, 2009 1:26 am
Мнения: 2763
Местоположение: София
Мнение Re: Да се похваля малко.
Прав си, но не съм стигнал с четенето до мерене на честота, явно сега е момента.


Пет Фев 12, 2021 9:58 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Чет Апр 16, 2009 1:26 am
Мнения: 2763
Местоположение: София
Мнение Re: Да се похваля малко.
Уж лесно но нещо се оплетох с алгоритъма. Не мога да се сетя как да го направя, по-точно като запали след евентуално 3 опита какво да прави, ако пак иде в началото и провери че няма мрежа ще почне пак да пали но той вече работи, нещо тука се оплетох. блокирва ми мозъка по тва време. Четох за честота и ми се струва че по напрежение ще ми е по-лесно, проверих и на стартер дава под 80 волта което е добре.
Малко помощ моля.

Edit
Ся чета за ползването на go to и на do while, кое да ползвам в случая.


Съб Фев 13, 2021 6:58 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 11:22 pm
Мнения: 3084
Мнение Re: Да се похваля малко.
Първо се наспи, после вземи няколко бели листа ,молив и гумичка ,,,и се опитай
да напишеш с думи какво трябва да се случва. После групирай думичките в правоъгълници (символ за действия) , ромбове с връх нагоре (символ за вземане на решение , разклонение по условие) , ромбоиди и/или кръгчета - символ за получаване и изпращане на информация. Та като направиш блок-схемата на програмата, вземи си пак клавиатурата.


Съб Фев 13, 2021 9:44 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 03, 2005 2:21 am
Мнения: 12765
Местоположение: София
Мнение Re: Да се похваля малко.
Послушай Стефан. Ако не работи на хартия, няма да работи и в действителност.
Ето какво има предвид той:
http://www.google.bg/search?q=software+ ... UQ_AUIBSgB


Съб Фев 13, 2021 11:28 am
Профил
Ранг: Напреднал
Ранг: Напреднал

Регистриран на: Вто Май 07, 2019 9:16 pm
Мнения: 434
Местоположение: I bin thinkin’ this bin Gurindji country. We bin here longa time before them Vestey mob.
Мнение Re: Да се похваля малко.
go to го забрави, ползва се само за много специфични случаи, когато трябва да излизаш от двойно и тройно.. ембеднати цикли. Ползвай или do{} while() , или само
while(...) {...}, или if() {} .
Преди това дефинирай две глобални променливи в началото, които да ти представляват условията за проверка, например:

boolean EngineRunning = 0; // ( True/False (0, 1) )?
byte NumberOfAttempts = 0; // (0, 1, 2, 3);

След това във
void loop() { частта:

.....................................................................................//първо прави проверката дали агрегата вече работи, и ако да, промени EngineRunning = 1;

if( !EngineRunning && NumberOfAttempts<3) { //след което стартирай цикъла на запалване ако не работи и опитите за запалване са по-малко от три броя
DigitalWrite(4, HIGH);
delay(5000);
DigitalWrite(4, LOW); // примерен код за запалване-> подаване на ток на пин 4 за 5 секунди.

NumberOfAttempts++; // отчитане броя опити
}

}

Разбира се кода може да се напише далеч по-оптимално с два реда, но в началото по-добре търси разбираемост отколкото оптималност.
Ако ползваш while() {} конструкция, сложи проверката EngineRunning вътре в while конструкцията.
За броене на честота на ток на даден пин имаше някаква специална функция готова, която не мога да си спомня (карам по спомени от детските години :) ) Провери на страницата на ArduinoRefference.


Съб Фев 13, 2021 12:25 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 20, 2009 11:54 pm
Мнения: 11338
Местоположение: "Занзибар"
Мнение Re: Да се похваля малко.
На мен тези блок-схеми ми бяха досадни, но в началото са задължителни.
pipilica, нарисувай го на хартия и пусни снимка. Също така дай схема на превключването в силовата част, че там са големите гърмежи.
С програмния код ще помагат. Напр. Jack почна с него, но цикълът трябва да завършва с изчакване, все едно дали е тръгнал генератора.


Съб Фев 13, 2021 2:04 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Чет Фев 03, 2005 2:21 am
Мнения: 12765
Местоположение: София
Мнение Re: Да се похваля малко.
pipilica написа:
Ся чета за ползването на go to и на do while, кое да ползвам в случая.

Виж книгите на Димо. Във форума имаше линк към тях.


Съб Фев 13, 2021 2:08 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Вто Яну 20, 2009 11:54 pm
Мнения: 11338
Местоположение: "Занзибар"
Мнение Оптимизиран код
Jack написа:
... ... ... Разбира се кода може да се напише далеч по-оптимално с два реда, но в началото по-добре търси разбираемост отколкото оптималност. .....

Днес, след разходката на кучката и почистване на краката ѝ се сетих за това и почнах така да се хиля, че чак жената се разтревожи. Още по-гадното бе, че нямаше начин да ѝ обясня що се хиля.
Значи командата беше: "Кухня, скок хавлия - нани, бърже!" и се изпълни за около секунда-две.
Ако бях казал: "Хайде, моето момиче, върви в кухнята да си легнеш на хавлийката и стой там, но побързай!" пак щях да бъда разбран, но според зависи, командата щеше да е по-дълга от изпълнението, а "устройството" щеше да ми отговори с грешни чек-суми :lol:
Няма нужда от "индийско" програмиране! :D

Въх, забравих да кажа, че Димо си беше пуснал книжките в нашата "Библиотека"...


Съб Фев 13, 2021 10:29 pm
Профил
Ранг: Напреднал
Ранг: Напреднал

Регистриран на: Вто Май 07, 2019 9:16 pm
Мнения: 434
Местоположение: I bin thinkin’ this bin Gurindji country. We bin here longa time before them Vestey mob.
Мнение Re: Да се похваля малко.
:D Програмата може да се напише за по-оптимално с 'short circuit', но много начинаещ народ получава мозъчен шорт съркът от такъв тип код:
PowerDown & !EngineRunning & !NumAttempts/3 & StartEngine();
void StartEngine() { .... }
и т.н.
Един умен човек беше казал, че компютрите не разбират от езици за програмиране, защото те не са направени за тях а за хората, т.е. - разбираемостта на кода не е важна 'за кучката а за кучкаря' . :)


Съб Фев 13, 2021 11:44 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: Да се похваля малко.
Jack написа:
Програмата може да се напише за по-оптимално с...

... ако оптимизационната цел е по- малко редове сорс код или по-малък брой натиснат "ENTER"... Но ако оптимизационната цел е: читаемост, разбираемост и пр. тогава един "разбираем сорс код" е също оптимален. ;)
Просто по дифоулт в нашата съвременна цивилизация, за оптимално се приема това което пести енергия. Или изглежда, че пести Енергия. (по-малко мислене също пести енергия ;) )
Но ако "кондензирания сорс" позволи двусмислие за компилатора или два дена зверене и чесане по врата с дебъгер в ръка. Тогава се осъзнава оптималноста от четимия сорс код.

В тая връзка, мисля че примерния сорс ред по-горе има нужда от корекция:

PowerDown & !EngineRunning & !(NumAttempts/3) & StartEngine();

_________________
Най-опасният враг на истината и свободата е мнозинството.


Нед Фев 14, 2021 8:39 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 06, 2018 5:18 pm
Мнения: 1750
Мнение Re: Да се похваля малко.
Zdrav написа:
Тогава се осъзнава оптималноста от четимия сорс код.

Ако работи за някоя голяма компания там няма да му обясняват нищо а направо ще го принудят да се придържа към някои от качествените стандарти за писане на код като MISRA например - http://caxapa.ru/thumbs/468328/misra-c-2004.pdf

_________________
“Intelligence is the ability to adapt to change.” Stephen Hawking


Нед Фев 14, 2021 10:58 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Яну 26, 2005 2:01 pm
Мнения: 1952
Местоположение: Варна
Мнение Re: Да се похваля малко.
Bai Ui написа:
Zdrav написа:
Тогава се осъзнава оптималноста от четимия сорс код.

Ако работи за някоя голяма компания там няма да му обясняват нищо а направо ще го принудят да се придържа към някои от качествените стандарти за писане на код като MISRA например - http://caxapa.ru/thumbs/468328/misra-c-2004.pdf

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

_________________
Най-опасният враг на истината и свободата е мнозинството.


Нед Фев 14, 2021 11:42 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 12:48 pm
Мнения: 6094
Мнение Re: Да се похваля малко.
докарах го до компилация... нямам платка :D


Прикачени файлове:
arduino.png
arduino.png [ 85.01 KiB | Прегледано 2740 пъти ]
pico.png
pico.png [ 80.13 KiB | Прегледано 2740 пъти ]

_________________
main[-1u]={1};
Нед Фев 14, 2021 2:54 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 58 мнения ]  Отиди на страница Предишна  1, 2, 3, 4  Следваща

Кой е на линия

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


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

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