Arduino - Akvārija vadības kontrolieris (dators)

briedis
Reģistrētie lietotāji
Atbildes: 493
Pievienojies: Cet Jan 15, 2009 12:18 pm
Atrašanās vieta: Riga, centrs
Vecums: 39

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt briedis » Tr Jūl 28, 2010 8:30 am

Kādu iebūvēto funkciju Tu domā? hour() un minutes() es izmantoju, Alarm bibliotēka man īsti neko nedos, jo starp Alarm taimeriem kontrolieris nepārbauda vai "Tagad" kontrolierim jābūt ieslēgtam vai izslēgtam.

delay man pašlai ir uzlikts, lai Serial.print() nespamo pārāk ātri informāciju uz monitora.
nbinc
Reģistrētie lietotāji
Atbildes: 1649
Pievienojies: Otr Feb 12, 2008 2:45 pm
Atrašanās vieta: Rīga
Contact:

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt nbinc » Tr Jūl 28, 2010 1:10 pm

Tev tur ir jāskatās pēc fakta ko labāk izmantot. Ja tu izved uz ekrāna galīgo mainīgo "2242" un pēc tā skaties tad no problem, bet vizuāli 2242 tomēr izskatās ne tik labi kā 22:42. Ja tu taisi programmu priekš sevis tu jau visu sapratīsi, bet citiem tāds pieraksts būs drusku nesaprotams - 2242 minūtes vai 22 stundas un 42 minūtes.

Ar tām laika funkcijām (vai kaut parastām matemātiskām funkcijām) varētu teiksim skaitīt cik minūtes (sekundes) ir palicis, tad konvertēt tās stundās + minūtēs un parādīt uz ekrāna hour:min. Tavā variantā protams arī var skaitīt (ciparu/100=stundas, atlikums ir min), bet tas būs nedaudz sarežģītāk. A ja tev ievajadzēsies taimeri ar sekunžu precizitāti ? Teiksim mēslojuma dozātoram.

Kaut gan te jau kā kuram vairāk patīk..... galu galā kontrolieris vadīs tavu akvāriju :)
Es mēģinu drusku savādāk to visu uztaisīt, lai pašam pēc tam modificēt būtu vieglāk... jo pēc savas pieredzes zinu - pēc kāda laika visas tās nianses aizmirstās un tad jāurbjas atkal pa jauno kodā - ko tu tur esi sagudrojis :)
briedis
Reģistrētie lietotāji
Atbildes: 493
Pievienojies: Cet Jan 15, 2009 12:18 pm
Atrašanās vieta: Riga, centrs
Vecums: 39

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt briedis » Tr Jūl 28, 2010 1:28 pm

Šo mainīgo es izmantoju tikai, lai noskaidrotu vai šobrīd, kādam no relejiem ir jābūt izslēgtiem vai ieslēgtiem.
Uz ekrāna drukājot es ņemšu iebūvētās funkcijas, līdzīgi kā piemērā, kas nāk Time bibliotēkā.

void digitalClockDisplay(int x,int y){
  GLCD.CursorTo(x,y);
  GLCD.Puts("Time - ");
  GLCD.PrintNumber(hour());
  printDigits(minute());
  printDigits(second());
}

void printDigits(int digits){
  GLCD.Puts(":");
  if(digits < 10)
    GLCD.PrintNumber(0);
  GLCD.PrintNumber(digits);
}

--------------
Bet tur kur kodā ir vērtības definētas ērtāk man liekas ir stundas*100 + minutes.

// set timer on/off times
int t_on_aqua_light_1 = 1500;
int t_off_aqua_light_1 = 2330;
int t_on_aqua_light_2 = 1510;
int t_off_aqua_light_2 = 2320;
int t_on_refugium_light = 2350;
int t_off_refugium_light = 800;


Cik tev šobrīd no nepieciešamās funkcionalitātes ir sarakstīts un vai nesāk pietrūkt atmiņa vai vieta kodam?
nbinc
Reģistrētie lietotāji
Atbildes: 1649
Pievienojies: Otr Feb 12, 2008 2:45 pm
Atrašanās vieta: Rīga
Contact:

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt nbinc » Tr Jūl 28, 2010 1:36 pm

A tu taimeru vērtības rakstīsi kodā ? Es biju domājis to laiku maināmu no paša kontroliera "konsoles". Jo kad tu pārraksti programmu iekš Arduino visa tā darbība apstājas (gaismas un sūkņi būs izslēgti)..... kaut gan iespējams ka izmantojot to I2C mikreni tev portu stāvoklis saglabājas pēc kontroliera Reset'ā.

Uz atmiņas patēriņu vēl neskatījos.... palaidu šo lietu garām... būs jāpačeko. Sliktākā gadījumā varēs kādu fontu samazināt vai vispār izslēgt. Kut gan 128 Kb ir pietiekoši daudz 8 bitu mašīnām. Savā laikā uz ZX Spectrum arī ar 48 Kb diezgan sarežģītas spēles gāja... a te kaut kāds akvārija kontrolieris :) domāju ka atmiņas pietiks....
briedis
Reģistrētie lietotāji
Atbildes: 493
Pievienojies: Cet Jan 15, 2009 12:18 pm
Atrašanās vieta: Riga, centrs
Vecums: 39

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt briedis » Tr Jūl 28, 2010 1:44 pm

v1.0 atstāšu tā pat, šaubos vai man bieži vajadzēs mainīt gaismām on/off laiku. Iespējams, ka nāktnē pārnesīšu visas vērtības uz EEPROM un glabāšu tabulās.

Vēl viena laba lieta : http://www.arduino.cc/playground/Code/DatabaseLibrary Ja izmanto citu atmiņas tipu, tad tā lieta nederēs, bet piemēram sistēmas galvenos iestatījumus EEPROM būtu labāk glabāt, daudz ātrāka datu lasīšana/rakstīšana.
nbinc
Reģistrētie lietotāji
Atbildes: 1649
Pievienojies: Otr Feb 12, 2008 2:45 pm
Atrašanās vieta: Rīga
Contact:

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt nbinc » Tr Jūl 28, 2010 10:19 pm

Jā, interesanta ideja ar datu bāzi, man kā reiz 256 Kbit I2C EEPROM mikrenes ir....
Kristjans
Reģistrētie lietotāji
Atbildes: 6
Pievienojies: Tr Feb 03, 2010 7:19 am
Atrašanās vieta: Rīga
Vecums: 30

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt Kristjans » Otr Okt 12, 2010 6:24 pm

Pievienojos Jūsu bariņā, jo ir iegādāts Arduino Mega Starter Kit`s.
Sākumā gribētos tik pamācīties, palauzīt galvu un varbūt nākotnē uztaisīt kontrolieri priekš akvārija.

Viena no pirmajām lielajām problēmām radās tad, kad vēlējos pieslēgt reālā laika pulksteni. SDA -> SDA20 un SCL-> SCL21 Ceru kad pareizi esmu pieslēdzis. Problēma šim visam ir tā, kad Serial Monitorā man rādās 0:0:0      0/0/2000 (laiks nav uzstādīt) Tad problēma varētu būt kodā (šeit) tieši tajā daļā kur jāuzstādās pulkstenim vai arī neesmu pareizi saspraudis vadus.

Varbūt kāds var padalīties ar savu izmatoto kodu un kā uzstādījāt pareizu laiku?
nbinc
Reģistrētie lietotāji
Atbildes: 1649
Pievienojies: Otr Feb 12, 2008 2:45 pm
Atrašanās vieta: Rīga
Contact:

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt nbinc » Tr Okt 13, 2010 1:40 pm

Vai Serial Monitor parāda ka laiks vispāri iet ? sekundes tikšķ ? Vai tu esi uzstādījis pulksteņa "atrašanās vietu" uz I2C magistrāles.
Un kapēc tu izmanto tieši RTC.set, kaut gan varbūt tur ir kādi varianti ar to uzstādīšanu.... ir vēl tāda komanda kā Wire.send

Paskaties šo te piemēru - http://wiring.org.co/learning/libraries ... clock.html
tur arī var redzēt kā teimerim adresi iedot programmas sākumā.

Kods: Izvēlēties visus

int clockAddress = 0x68;  // This is the I2C address
Kristjans
Reģistrētie lietotāji
Atbildes: 6
Pievienojies: Tr Feb 03, 2010 7:19 am
Atrašanās vieta: Rīga
Vecums: 30

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt Kristjans » Tr Okt 13, 2010 10:48 pm

Sekundes netikšķ nevienā no manis izmēģinātajiem piemēriem.
Piespraudu reālā laika pulksteņa SDA -> Analog 4 un SCL -> Analog 5
Izmēģināju tevis doto piemēru, izpildīju visu kā teikts arī ievadot izteiksmi (T1157193020209 Q(1-2) - (Q1)), man izmet ārā paziņojumu (0:0:0  0/0/0: RTC1307 Initialized Memory) un nekas cits vairs nenotiek.

Varbūt ja tas ko dod tad izmatoju šādu reālā laika pulksteni.
artursj
Reģistrētie lietotāji
Atbildes: 296
Pievienojies: Piekt Feb 05, 2010 8:27 am
Atrašanās vieta: Ķekava, Rīga
Vecums: 37

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt artursj » Piekt Jan 06, 2012 10:38 am

Mazliet pacelšu šo tēmu, esmu sācis skatīties uz Arduino pusi...

ir jēga ņemt jauno Arduino mega R3 vai labāk ņemt vecāku, bet veselu kit'u par apmēram tādu pašu cenu? Respektīvi vai tās izmaiņas, kuras veiktas R3 versijā ir tā vērtas?

P.S. te tās izmaiņas, kuras, pagaidām, man neizsaka neko :whistle:
Revision 2 of the Mega2560 board has a resistor pulling the 8U2 HWB line to ground, making it easier to put into DFU mode.
Revision 3 of the board has the following new features:

    1.0 pinout: added SDA and SCL pins that are near to the AREF pin and two other new pins placed near to the RESET pin, the IOREF that allow the shields to adapt to the voltage provided from the board. In future, shields will be compatible both with the board that use the AVR, which operate with 5V and with the Arduino Due that operate with 3.3V. The second one is a not connected pin, that is reserved for future purposes.
    Stronger RESET circuit.
    Atmega 16U2 replace the 8U2.
briedis
Reģistrētie lietotāji
Atbildes: 493
Pievienojies: Cet Jan 15, 2009 12:18 pm
Atrašanās vieta: Riga, centrs
Vecums: 39

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt briedis » Piekt Jan 06, 2012 11:07 am

Es ņemtu veco versiju.
artursj
Reģistrētie lietotāji
Atbildes: 296
Pievienojies: Piekt Feb 05, 2010 8:27 am
Atrašanās vieta: Ķekava, Rīga
Vecums: 37

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt artursj » Piekt Jan 06, 2012 11:58 am

laikam tā arī darīšu, nedomāju neko tik lielu un gudru taisīt :)
Rincis
LAK biedri
Atbildes: 1003
Pievienojies: Piekt Jan 04, 2008 11:31 pm
Atrašanās vieta: Rīga, rajons starp Ziepniekkalnu un Valdlaučiem

Re: Arduino - Akvārija vadības kontrolieris (dators)

Atbildēt Rincis » Sest Jan 07, 2012 4:15 pm

Es ņemtu veco, ir vismaz daudz kas klāt un Latvijā tas maksās tikpat cik tas Arduino
[color=green][size=100]Piedāvāju dažādus ūdens ūdens filtrus par labu cenu, sīkāk, [url=http://www.akvapro.lv]šeit[/url][/size][/color]
[color=green][size=100]Reversā osmoze, rezerves daļas, [url=http://www.akvaristuklubs.lv/forums/tirgus-placis/letas-reversas-osmozes/]šeit[/url][/size][/color]

Kas ir Pieslēdzies

Lietotāji, kuri atrodas šajā forumā: Nav reģistrētu lietotāju un 0 viesi

cron