Küsimus:
Kas Arduino on võimeline töötama 24/7?
Butzke
2014-02-12 04:24:10 UTC
view on stackexchange narkive permalink

Valmistan lihtsa Arduino veebiserveri ja tahan, et see oleks kogu aeg sisse lülitatud. Nii et see peab taluma pidevalt töötamist.

Kasutan Arduino Unot koos Etherneti kilbiga. See on varustatud lihtsa pistikupesaga toiteallikaga 5V @ 1A.

Minu küsimused:

  • Kas mul on probleeme Arduino kogu aeg sisselülitamisega jätmisega?
  • Kas selleks on mõni muu Arduino tahvel soovitatav?
  • Kas on mingeid ettevaatusabinõusid, mida pean arvestama see?
Esimene küsimus!
** Moderaatori märkus: ** näib, et saame palju vastuseid, mis kinnitavad, et see toimis nende olukorras. Kui teil on küsimusele midagi tehnilist lisada, vastake julgelt. Tehnilised vastused näivad siiski hõlmavat, et see töötab. Kui peate tingimata * märkima, et teie olukord toimis, oleks parem lisada kommentaar.
üksteist vastused:
sachleen
2014-02-12 04:36:58 UTC
view on stackexchange narkive permalink

Teil ei tohiks olla probleeme selle pideva sisselülitamisega, kuid mõni asi, mida võiksite kaaluda, on kõik loendurid, mis teil võivad olla, näiteks millis () kasutamine.

Arduino dokumentidest millisekraanil:

See number saab üle (naaseb nulli) umbes 50 päeva pärast.

Nii et pikka aega kestvate projektide puhul ei pruugi te probleemi kohe näha, kuid midagi sellist võib ilmneda ja põhjustada vigu.

Täpsuselt öeldes on millis muutuja ʻuint32_t`, seega ajab see üle ("läheb nulli tagasi") 4294967296 millisekundiga, mis on ~ 49,7 päeva, ~ 1193 tundi või ~ 71582 minutit.
Siis peate vaid kasutama veel ühte uint32_t, mis suureneb, kui esimene rullub üle. Siis saate ümberpaigutamise vahel nautida umbes 5,846 × 10 ^ 8 aastat.
Paljudel aegadel pole freeside () ümberpaigutamine tegelikult probleem, sest inimesed kipuvad millisid () kasutama suhteliselt. Nad võtavad vahe kahe millise () kõne vahel või võtavad algusaja ja kontrollivad, kas millis () on suurem kui algus + aeg. Aritmeetiline ümberpaigutamine ja millis () ümberpaigutamine tühistatakse sageli nii, et aeg2-aeg1 on täpne isegi siis, kui nende vahel on ümberpaigutamine, kui pole kahte ümberpaigutamist. Kui teie kood kasutab absoluutseid millis () väärtusi, võib see suhtelise millise () loogika kasutamiseks uuesti läbi mõelda.
kui teete millis () - startTime (kui algusaeg on allkirjastamata pikk, ehk uint32_t), saate alati kehtiva tulemuse, kui pole juhtunud rohkem kui ühte ülevoolu
Täpsemalt öeldes toimub ülevool 49 päeva, 17 tunni, 2 minuti, 47 sekundi ja 295 millisekundi pärast.
Millis () ülevool ** ei pea kunagi ** olema probleem. Lisateavet leiate jaotisest [millis () ülevool ... halb asi?] (Http://www.gammon.com.au/millis). Põhimõtteliselt, kui arvutate ajaintervallid lahutamise teel, kasutades sobivaid andmetüüpe, pole teil kunagi probleemi.
Isegi kui keegi ei kasuta otseselt `millisid`, mõtlen, kas võib kindel olla, et kumbki imporditud teekidest seda ei tee.
Matthew G.
2014-02-12 04:40:23 UTC
view on stackexchange narkive permalink

Paar asja, mida tuleks meeles pidada (väljaspool @ Sachleeni mainimist millis () ):

  • Nagu iga elektroonika, võib ka soojust häiriv. Mikrokontroller ise ei ole kuumuse seisukohast tõenäoliselt suur probleem, kuid muud komponendid, nagu toiteallikas, võivad probleeme tekitada.

  • Kui teie kood kasutab EEPROM.write () , pidage meeles, et teie Uno ATmega328P-s olev EEPROM on hinnatud ainult 100 000 kirjutamise eest.

TheDoctor
2014-02-12 04:54:56 UTC
view on stackexchange narkive permalink

Pidage meeles, et välgul ja EEPROMil on piiratud eluiga (vastavalt umbes 10 000 ja 100 000 kirjutamistsüklit), nii et kui kirjutate neile palju, võivad need rikutud olla. Minu tehtud testis kulus välisel EEPROMil umbes 3 päeva, et hakata rikutud olema.

Kuigi dokumentatsioon võib loetleda 10k tsüklit, on paljud testid näidanud, et probleemid hakkavad tekkima ~ 100k.
EEPROM-i eluiga on vastavalt andmelehele vähemalt 100 000 kirjutamistsüklit. Ma arvan, et mäletan, et lugesin testi, kus korruptsioon algas peaaegu miljonist kirjutamisest.
JVarhol
2014-02-12 04:47:08 UTC
view on stackexchange narkive permalink

Arduino 24/7 käitamine ei tohiks olla probleem.

Kuid veenduge, et teil on juhtum, mis võimaldab ventilatsiooni, ja hoiate seda hästi ventileeritavas kohas. Nii nagu arvutid, ei hoia nad ka jahedas keskkonda, mis võib neid jahedana hoida.

Ka serveri koormus peaks olema üks asi, mida tuleks arvestada, seda rohkem on serveril koormust, seda rohkem peab ta töötlema ja seda rohkem soojust see tekitab.

ATmegal pole traditsioonilisi madala energiatarbega režiime nagu tavalistel arvutitel, seega pole koormus asjakohane. Kui te ei tegele aktiivse arvutusega, on see lihtsalt ootamine. Energiatarve töötamisel on tegelikult üsna staatiline (välja arvatud sellised asjad nagu EEPROM-i / välklambi kirjutamine), vähemalt ATmega MCU jaoks. Ethernet-liidese voolutarvis võib liikluse koormuse tõttu olla erinevusi, kuid tõenäoliselt ei tekita miski piisavalt soojust, kui see pole ideaalses vaakumis või kütteseadmes või midagi muud.
[Atmega328p] (http://www.atmel.com/Images/Atmel-8271-8-bit-AVR-Microcontroller-ATmega48A-48PA-88A-88PA-168A-168PA-328-328P_datasheet.pdf) on madala võimsusega unerežiim, mis tõmbab ~ 0,1 uA.
Mis oleks asjakohane ainult siis, kui kood paneks protsessori reaalselt magama.
sdcharle
2014-07-17 20:08:02 UTC
view on stackexchange narkive permalink

Oleme oma Arduino-põhist RFID-pääsusüsteemi Bloomingtons Hackerspace'is Bloomington IN töötanud alates 2011. aasta lõpust ning peale paari elektrikatkestuse ja tarkvarauuenduse, mida see töötab ööpäevaringselt, pole probleemi. Hiljuti lisasime võrgustatud termostaadi, sama pakkumine - see töötab ööpäevaringselt.

Ka minul on 24 tundi ööpäevas töötav RFID-juurdepääsusüsteem. Ainus kord, kui see "ebaõnnestub", on vool välja lülitatud, kuna see töötab vooluvõrgust. See on kestnud 2011. aastast ilma probleemideta.
Haha, hei Steve!
@NickGammon Jah, teie süsteem on lahe, kuid miks ei põhine auth kaardi DATA, vaid ainult sümboolse UID-ga? Palun näidake meile nutikat lahendust.
mis su mõte on? see pole plakati küsimusega seotud.
Manishearth
2014-02-12 04:50:23 UTC
view on stackexchange narkive permalink

Arduinos võivad probleemideta töötada tõepoolest pikka aega, ehkki olenevalt kohalikest oludest ja arvutamise intensiivsusest peate võib-olla kinnitama jahutusradiaatorid.

Lisaks hoidke seda hästi ventileerituna.

See sõltub ka kasutatavast programmist, kui teie server teenib lehte iga natukese aja tagant, ei tohiks see olla probleem, kuid kui eeldate pidevat liiklust, võib Arduino kiiresti kuumeneda.

Samuti peaksite tagama toiteallika stabiilsuse, kui Arduinoga pingil katseid teha, pole see suur probleem, kuid see võib muutuda probleemiks, kui muundate voolu vooluvõrgust püsiva seadme jaoks.

Pole mingit põhjust arvata, et arvutuskoormus põhjustab Arduino ülekuumenemist. Nagu faktipõhisemates vastustes on välja toodud, peab ** tavaline ** juhtum kulgema täiskoormusel. Kui on mõni komponent, mis võib üle kuumeneda, on see pingeregulaator, kuid see on peamiselt sisendpinge funktsioon, kuna see töötab juba peaaegu kõige suurema eeldatava vooluga, kui midagi ei tee.
@ChrisStratton Etherneti kilp võib erineda võimsusest olenevalt kasutusest. Samuti võiks Arduino olla väikese võimsusega olekus (näiteks magada kella 12–5 vahel).
Steven10172
2014-02-12 07:48:43 UTC
view on stackexchange narkive permalink

Ma pole kunagi Arduinot nii kaua juhtinud, kuid probleemi ei tohiks olla. Üks asi, millele tasub tähelepanu pöörata, on sisendpinge.

Kuigi Arduino on võimeline töötama 7-20v sisendina, võib üle 12v ülepinge üle kuumeneda ja põhjustada plaadikahjustusi. Kiire soovitusena Arduino ülekuumenemise vältimiseks hoian pinget võimalikult 7v lähedal.

EternityForest
2014-04-04 12:08:21 UTC
view on stackexchange narkive permalink

Tahaksin mainida probleemi, mis ei tule eriti sageli esile, kuid võib põhjustada pikaajalisi probleeme. Mälulekked ja hunniku killustatus. Peaaegu mitte keegi mallocs pole sisseehitatud asjades, kuid kui teete seda, siis tehke seda õigesti.

Sa lõid mind sellega, +1.
Usun, et Stringi klass kasutab malloci ja see on üsna tavaline.
Nõus. Eriti veebiserveri puhul veenduge, et te ei teeks midagi, mis võib mälu killustada, näiteks kasutage klassi String. Seda on aga lihtne vältida. Mul on veebiserverina töötav Arduino, mis annab mulle teada, kas mu garaažiuks on suletud. See on kestnud aastaid.
TimboTinkerer
2014-04-07 01:13:32 UTC
view on stackexchange narkive permalink

Ehitasin oma esimese Arduinoga lihtsa toitekontrolleri. Selle toiteallikaks on USB-ühendus veebiserverist, mis omakorda töötab üsna suure aku varukoopia kaudu (millel pole teavitamisvõimalusi).

See on ühendatud ka mobiiltelefoni laadijaga, mis on ühendatud mitte -UPS-pistikupesa.

Nii et kui toide sureb, saadab Arduino sõnumi serveris töötavale väikesele programmile. Serveriprogramm saadab mulle omakorda meilisõnumi.

See installiti 2013. aasta septembri lõpus, 23. märtsil 2014 - sain oma esimese e-kirja!

Nii et ma pole näinud probleem (see ei kasuta millisid ()), kuid proovivõimsust valitakse iga 5 sekundi järel

next-hack
2017-09-02 21:53:46 UTC
view on stackexchange narkive permalink

Kas Arduino on võimeline töötama 24/7?

See on usaldusväärsuse küsimus. Usaldusväärsuse osas tuleb arvestada paljude asjadega.

  1. Tarkvara. Tugevamaid tarkvarasid on rohkem. Leidub vähem robustseid tarkvarasid. Näiteks kriitiliste rakenduste puhul ei soovitata dünaamilise mälu jaotamist, kuna see võib viia mälu killustumiseni. Kahjuks loodab Arduino suuresti mälumälu jaotamisele. See probleem on veelgi süvenenud, kuna enamikul Arduino tahvlil on väga piiratud RAM.
  2. Teegid. Paljudes Arduino teekides on tõepoolest vigu (isegi need on Arduino paketti sisseehitatud, nii lihtsad kui WString!). Normaalsel töötamisel ei pruugi sellised vead üldse ilmneda. Kuid te ei saa loota, et "kõik saab hästi" ja et "kasutaja" (või alamsüsteem) toimiks ennustatult. Raamatukogudel võivad olla ka piirid (st mitte korralikult vigu). Näiteks viitasid paljud kasutajad juba funktsioonile themillis (), mis lähtestatakse 50 päeva pärast. Kui seda õigesti ei käsitleta, võib see põhjustada tõsiseid vigu.
  3. Riistvara usaldusväärsus (rääkimata isegi odavatest Arduino kloonidest ...). Siin avaneb uus alaküsimuste klass. Tsiteerin ainult väga piiratud alamhulka.
    • Kas Arduino lauad on loodud usaldusväärsuse tagamiseks? (nt milline on kasutatud kondensaatorite
      usaldusväärsus? ja muud komponendid?)
    • robustsus EMI vastu? Ma ei loodaks sellele: enamikul Arduino plaatidest on ainult kaks kihti ja neil puudub korralik maa / elektrilennuk.
    • EEPROM (see on nii tarkvara kui ka riistvara). Kas teie tarkvara kasutab EEPROM-i? Kas tsükli vältimiseks (korduv kirjutamine / kustutamine samadel lahtritel) on mõne algoritmi rakendamine?
    • välkmälu säilitamise aeg. Retentsiooniaeg väheneb koos temperatuuri ja ka programmeerimistsüklite arvuga.
    • Ioniseeriv kiirgus. Jah, isegi kui tõenäosus on vähemalt merepinnal VÄGA madal, ei ole kiirgusest põhjustatud ühe sündmuse häirimise tõenäosus null ja tuleks võtta piisavad vastumeetmed (eriti tuleb arvestada sellega, et RAM-il puudub riistvaravigade tuvastamine ) kriitilistes rakendustes.
    • Toiteallika kvaliteet.
    • Töökeskkond. 25 ° C kontrollitud keskkond või must kast kastis (suvel 70 ° C päikese käes)? Mida kõrgem temperatuur, seda kiiremini toimivad kõik lagunemismehhanismid.
    • ...

Siiski ei tohiks teid üllatada, kui teie arduino töötab laitmatult aastaid. Kuid see ei taga, et iga arduino seda teeb.

Mõned vastumeetmed suurendavad töökindlust:

  • kasutage valvekoera: parem on lähtestada reageerimatu süsteem, mitte kui kinni jäänud või valesti käituv süsteem.
  • Vältige mälu jaotamist kasutavate raamatukogude kasutamist.
  • Selle säilitamiseks rakendage (kui kasutate EEPROM-i) algoritmi!
  • Hea toiteallikas.
  • Vältige karmid keskkonnatingimused (kõrge temperatuur, kõrge õhuniiskus, suured ja pidevad termotsüklid jne).
user2497
2017-11-05 02:34:11 UTC
view on stackexchange narkive permalink

See töötab kindlasti 24/7. Vreg-i mahalaadimiseks kasutan kas 5V 5V tihvti või 7808 Vin-tihvti. Ideaalis oleks see 6,5 V, kuid mul pole selliseid tarvikuid. Võimalik, et soovite 5 V lahutusseadme korki, et leotada toiteallika sisselülitamisel väiksemaid piike.

Mis tahes riistvara, mis töötab 5 V juures, söödan 7805-ga. Selle asemel võite kasutada LM317-sid või LM350-sid. 78XX-st, kuid nende jaoks vajate mõnda takistit, võib-olla trimpotid.



See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 3.0-litsentsi eest, mille all seda levitatakse.
Loading...