Avaleht
uus teema   vasta Raud »  TSI (TeeSeeIse) »  Arduino märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
mine lehele eelmine  1, 2, 3, 4, 5  järgmine
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
new1
HV kasutaja

liitunud: 02.06.2007




sõnum 01.04.2017 13:32 vasta tsitaadiga

Tere, ütlen kohe ära, et koodikirjutamisest ei tea suurt midagi, ent ühe projekti jaoks oleks vaja üht funktsiooni arduinolt saada. Nimelt PWM juhtimine kahe pushbutton tüüpi nupu abil. Googlest leidsin kunagi mingisuguse koodijupi(algselt mingi LED-i timmimine oli, natuke sättisin seal, et PWM astmed ühekaupa saaks jms), kus üks nupp hakkab PWM-i kasvatama kuni maksimumini välja ja teine kahandab siis vastavalt. Muidu kõik iseenesest toimib, aga täpset ja kiiret reguleerimist samaaegselt ei saa teha. Nimelt nupp reageerib kohe kui vajutada üksteise otsa 256ks jagatud PWM-i vähendamise/suurendamisega. Hetkel on siis nii, et kui tahan PWM-i täpselt iga 256 sammu kaupa eraldi juhtima, siis pean selle delay 100ms kanti jätma, ent kui tahan sellisel juhul peale sisselülitust kiirelt näiteks 70% PWM-ini jõuda, siis see ei õnnestu, pean nuppu pikalt all hoidma ja ootama. Kui delay näiteks 10ms panen, siis läheb küll kiirelt ja ludinal üles, ent täpselt ei saa reguleerida, kuna nupuvajutuse aja sisse jääb palju PWM-i astmeid. Ideaalne variant oleks selline, kus nuppu vajutades kõigepealt liigutaks ühe astme võrra üles/alla PWM-i ja rohkem mitte. Kui nüüd nuppu all hoida, siis näiteks 1000ms pärast hakkaks kiirelt üles/allapoole kerima PWM-i. Nõnda oleks kiirus ja täpsus saavutatavad. Lisan olemasoleva koodijupi jutu lõppu, et ehk keegi oskab täiendada seda koodi veidi sobivaks. Teine variant oleks viidata sobivale valmiskoodijupile kusagil, ise otsisin, aga paraku ei jäänud sobivat silma.

/*
The circuit:
* pushbutton attached to pin 7 & 9 from 5V
* 10K resistor attached to GND
* LED attached from PWM Pin 8 to ground (or use the built-in LED on
most Arduino boards)

created 20 Feb 2014
by Syed Nasir

This example code is in the public domain.
*/

// constants won't change. They're used here to
// set pin numbers:
const int posButton = 9; // + button pin 9
const int negButton = 8; // + button pin 9
const int ledPin = 6; // LED pin connected to pin 8

// variable for LED brightness
int brightness;

// variables will change:
int posButtonState = 0; // variable for reading the pushbutton status
int negButtonState = 0; // variable for reading the pushbutton status

void setup() {
// put your setup code here, to run once:

Serial.begin (9600);

// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);

// initialize the pushbutton pin as an input:
pinMode(posButton, INPUT);
pinMode(negButton, INPUT);

// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);

} // end of setup

void loop() {
// put your main code here, to run repeatedly:

// read the state of the pushbutton value:
posButtonState = digitalRead(posButton);
negButtonState = digitalRead(negButton);

// only one button pressed at a time
if (posButtonState == HIGH && negButtonState == LOW)
{
if (brightness <= 254)
{
brightness = brightness +=1;
}
else
{
brightness = 255;
}

// led lights up
analogWrite(ledPin, brightness);

Serial.print (brightness);
Serial.println ();
}

if (negButtonState == HIGH && posButtonState == LOW)
{
if (brightness >= 1)
{
brightness = brightness -=1;
}
else
{
brightness = 0;
}

// led lights up
analogWrite(ledPin, brightness);

Serial.print (brightness);
Serial.println ();
}
delay (100);
} // end of loop
tagasi üles
vaata kasutaja infot saada privaatsõnum
iceincube
HV veteran
iceincube

liitunud: 18.11.2005




sõnum 05.04.2017 14:52 vasta tsitaadiga

said tehtud?
Vihjeks on siin millis();

Nupu vajutamise hetkel salvestad mällu ajalise väärtuse.
Nupu vajutuse dedectimiseks pead nupu eelmise tüskli väärtust võrdlema hetke väärtusega : https://www.arduino.cc/en/Tutorial/StateChangeDetection

Siis iga tüskliga kontrolid palju aega mõõdunud on. Vastavalt mõõdunud ajale saab ka liita ja lahutada PWM väärtust.
tagasi üles
vaata kasutaja infot saada privaatsõnum
new1
HV kasutaja

liitunud: 02.06.2007




sõnum 06.04.2017 23:05 vasta tsitaadiga

Ei ole tehtud, hetkel asi toimib sellesama koodi järgi. Või ehk viitsid ise selle rea/read sobiva koha peale lisada kui puusalt ära paneksid selle icon_razz.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
Germo7
HV vaatleja

liitunud: 28.05.2003




sõnum 09.04.2017 23:11 vasta tsitaadiga

Hej:)
Kas keegi on Blynk-is saanud gsm800/900 modemiga mõne sketsi üle gprs-i tööle?
Või oskab nõu anda kus Eestis Arduino parim foorum vms on ?
Tänx icon_smile.gif

_________________
Samsung Galaxy Spica, S2, S4, S5, S6 Edge, S8
tagasi üles
vaata kasutaja infot saada privaatsõnum
KillFrenzy
HV Guru
KillFrenzy

liitunud: 05.04.2003



Autoriseeritud ID-kaardiga

sõnum 30.05.2017 17:30 vasta tsitaadiga

Vaja kordamööda lülitada 2 LED'i.

Kasutasin sellist koodi, kõik toimib, aga kas nii pikk delay näiteks 5 tunni peale on täpne või on see millegi muu pärast halb mõte?

void loop() {
  digitalWrite(12, HIGH);   // roheline tuli sisse
  delay(60000);             // aeg millisekundites
  digitalWrite(12, LOW);    // roheline tuli välja
  digitalWrite(11, HIGH);   // punane tuli sisse
  delay(240000);            // aeg millisekundites
  digitalWrite(11, LOW);    // punane tuli välja
 
}
tagasi üles
vaata kasutaja infot saada privaatsõnum
mikk36
HV Guru
mikk36

liitunud: 21.02.2004




sõnum 30.05.2017 18:05 vasta tsitaadiga

Kui täpselt sul viit tundi vaja tabada on?
tagasi üles
vaata kasutaja infot saada privaatsõnum
KillFrenzy
HV Guru
KillFrenzy

liitunud: 05.04.2003



Autoriseeritud ID-kaardiga

sõnum 30.05.2017 18:09 vasta tsitaadiga

Mitte väga, kui see 5 tunni pärast 5 sek nihkes oleks, see oleks suva.

Et siis 5 tundi järjest, põleb minut roheline ja 4 minutit punane. Mitte ei taha delayt 5 tunni peale panna.
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 31.05.2017 12:21 vasta tsitaadiga

Küsimus küll RPI kohta, aga äkki keegi siit oskab aidata. Lühidalt olukord selline. Terminalis lasen käima sudo python dallas.py ja see hakkab siis temp anduritelt infi saama ja 5 minutilise intervalliga netti saatma. Kui nüüd wifi ikaldub näiteks korraks, siis ongi timeout ja pean selle käsu uuesti käima laskma käsitsi. Samuti peab olema terminali aken avatud alati. Kui peale käsu käima laskmist terminali akna nurgast sulgen, siis ei saadeta ka infot enam järgneva viie minuti pärast. Kuidas nii teha, et Pi näiteks iga 60 minuti tagant teeks igal juhul restardi ja käima minnes avaks ise terminali ka käivitaks selle käsu ka?
Teine variant võib ka nii olla, et Pi ei tee restarti, aga see terminali aken koos käsu uuesti käima ajamisega tehtaks automaatselt iga tunni tagant.
tagasi üles
vaata kasutaja infot saada privaatsõnum
Etz
HV Guru
Etz

liitunud: 27.01.2005



Autoriseeritud ID-kaardiga

sõnum 31.05.2017 13:25 vasta tsitaadiga

olafsand, lase script screenis käima ja siis detachi ning sulge aken... icon_wink.gif
Üldiselt võid ka selle kõik cron'i toppida, mingi lihtsa skriptijupiga, mis eelmise instantsi olemasolu checkiks, selle vajadusel sulgeks ja uue käima tõmbaks. icon_rolleyes.gif

_________________
...life is random...so am I...
So, there is a fan. Time to grab your sh*t, gentlemen!
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 31.05.2017 19:07 vasta tsitaadiga

Etz, aitäh! icon_smile.gif Ma aiman mida mõtled ja kuidas see olla võiks, aga teostuseks on mul oskused nullis.
tagasi üles
vaata kasutaja infot saada privaatsõnum
andresv
HV kasutaja

liitunud: 06.12.2004



Autoriseeritud ID-kaardiga

sõnum 01.06.2017 16:48 vasta tsitaadiga

nohup käsk/programm on sellisteks otstrarbeteks mõeldud

>nohup python ./skript.py

Ja mis puudutab viit tundi ja arduinot, siis võiks olla piisavalt täpne.

Ma panin 4 arduiont ledribasid vilgutama delaydega. ning 12 tunniga ei olnud veel märgata et need oleks süngist välja läinud.
Aga need tõmmatakse iga õhta seinast välja, seega mitme päeva kogemus puudub.
tagasi üles
vaata kasutaja infot saada privaatsõnum
riaak
HV Guru
riaak

liitunud: 22.09.2002



Autoriseeritud ID-kaardiga

sõnum 02.06.2017 11:36 vasta tsitaadiga

Kui oskad, siis tee skript ümber, et saadab ainult korra andmed ja siis lõpetab töö.
Ja pane crontab-iga iga 5 min tagant jooksma. icon_idea.gif

Mul jooksevad skriptid nt nii:
*/5 * * * * cd /home/ubuntu && /usr/bin/python skript.py

_________________
¯\_(ツ)_/¯
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 02.06.2017 11:55 vasta tsitaadiga

riaak, ei oska kui aus olla icon_neutral.gif
Kas nii ei oleks võimalik, et mingi remote desktopi panen PI peal käima ja sa võtad asja üle ja teed selle paranduse skripti?
tagasi üles
vaata kasutaja infot saada privaatsõnum
Etz
HV Guru
Etz

liitunud: 27.01.2005



Autoriseeritud ID-kaardiga

sõnum 02.06.2017 14:55 vasta tsitaadiga

olafsand, pane script kuskile pastebin'i ja link viska siia, küll keegi ära parandab.
_________________
...life is random...so am I...
So, there is a fan. Time to grab your sh*t, gentlemen!
tagasi üles
vaata kasutaja infot saada privaatsõnum
riaak
HV Guru
riaak

liitunud: 22.09.2002



Autoriseeritud ID-kaardiga

sõnum 02.06.2017 15:18 vasta tsitaadiga

olafsand, pigem mitte, niigi palju tööd teha.
Pane jah pigem avalikult üles ja keegi ehk aitab thumbs_up.gif

_________________
¯\_(ツ)_/¯
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 02.06.2017 16:15 vasta tsitaadiga

Suured tänud Teile! Panen selle pühapäeval siis siia üles icon_smile.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
antsus1000
HV kasutaja

liitunud: 29.10.2010



Autoriseeritud ID-kaardiga

sõnum 08.02.2018 21:30 vasta tsitaadiga

Ehk leidub kellelgi koodi arduinole. Oleks tarvis, et see vee andur lülitaks releed.
https://www.ebay.com/itm/DC-5-24V-Contactless-Liquid-Level-Sensor-Switch-Non-Contact-Waterproof-Detector-/122834485435?var=&hash=item1c998180bb

Releeks selline:
https://www.ebay.com/itm/New-One-1-Channel-5V-Relay-Module-Board-Shield-For-Arduino-PIC-AVR-ARM-MCU/191732705414?epid=1068148793&hash=item2ca428e886:g:lloAAOSwYHxWPH2A
tagasi üles
vaata kasutaja infot saada privaatsõnum
maxfox04
HV veteran

liitunud: 08.02.2010



Autoriseeritud ID-kaardiga

sõnum 08.02.2018 22:19 vasta tsitaadiga

Millelegi pärast mulle tundub, et Arduino siin üleliigne. Need 2 asja peaks saama omavahel otse ühendada.
_________________
Hobielektroonik. Parandan katki läinud elektroonikat.
Teen pisemat jootmistööd odavalt. Suuremad kokkuleppel.
Huvid: mikrokontrollerid, DIY, IoT, CNC, 3D printer: Prusa i3.
tagasi üles
vaata kasutaja infot saada privaatsõnum
antsus1000
HV kasutaja

liitunud: 29.10.2010



Autoriseeritud ID-kaardiga

sõnum 08.02.2018 22:33 vasta tsitaadiga

maxfox04 kirjutas:
Millelegi pärast mulle tundub, et Arduino siin üleliigne. Need 2 asja peaks saama omavahel otse ühendada.



Tänud. Teil oli õigus. Sain asja toimima.
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 28.02.2018 10:47 vasta tsitaadiga

Võtan korra vana teema üles.

Eile uurisin siis seda crontab asja.

Mul on dallas.py fail mida vaja käitaga. Ka siis kui näiteks restardi teen vaarikale, et siis see läheks ise käima uuesti (dallas.py mõtlen)

Vaarikasse sisselogimine on user:pi ja siis parool. Siis edasi on terminalis cd /home
home kaustas käsk sudo python dallas.py ja vajalik asi hakkab tööle

terminalis crontab -e ja seal peaks lisama viimase rea? Olen sinna sättinud igatepidi, aga käima asi ei hakka. Lähenen valest kohast crontab`ile?
tagasi üles
vaata kasutaja infot saada privaatsõnum
riaak
HV Guru
riaak

liitunud: 22.09.2002



Autoriseeritud ID-kaardiga

sõnum 01.03.2018 01:00 vasta tsitaadiga

Kui sul on vaja, et see skript rootina jookseks, siis:

sudo crontab -e

Lõppu lisa:
@reboot cd /home/ && /usr/bin/python dallas.py

Python võib sul mujal asuda, kui /usr/bin/python . Õiget asukohta näed, kui trükid: which python

_________________
¯\_(ツ)_/¯
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 01.03.2018 10:59 vasta tsitaadiga

riaak, aitäh, proovin õhtul. Eile proovisin ka, aga tekkis olukord, et ei osanud seda viimast rida kuidagi ära salvestada crontabi. Lähenen Pi`le läbi Putty programmi. Mis klahvikombinatsiooniga ma salvestada saan seda? icon_redface.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
riaak
HV Guru
riaak

liitunud: 22.09.2002



Autoriseeritud ID-kaardiga

sõnum 01.03.2018 17:16 vasta tsitaadiga

Sõltub editorist. Nano puhul ctrl+o ning seejärel enter salvestab, ctrl+x väljub
_________________
¯\_(ツ)_/¯
tagasi üles
vaata kasutaja infot saada privaatsõnum
olafsand
HV Guru
olafsand

liitunud: 07.09.2007



Autoriseeritud ID-kaardiga

sõnum 01.03.2018 19:46 vasta tsitaadiga

riaak, sain savestatud, aga kasu sellest reast pole kahjuks. Peale rebooti igatahes dallas.py käima ei tõmmata icon_neutral.gif
tagasi üles
vaata kasutaja infot saada privaatsõnum
Chaza!
Kreisi kasutaja
Chaza!

liitunud: 18.07.2006



Autoriseeritud ID-kaardiga

sõnum 02.03.2018 11:30 vasta tsitaadiga

Siis peaks saama asja tööle /etc/rc.local faili lisades rea python /home/dallas.py

Kindel, et sul skript ei asu: /home/pi/dallas.py ?

_________________
Linux - Future
"Those Who Sacrifice Liberty For Security Deserve Neither." - Benjamin Franklin
Fanboys Must Die!
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Raud »  TSI (TeeSeeIse) »  Arduino mine lehele eelmine  1, 2, 3, 4, 5  järgmine
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.