Solenoidien laukaisu järjestyksessä

Hoi,

Olen rakentamassa hevosen ruokinta-automaattia joka on aitauksen viereen tuleva kaappi, jossa 3 saranoitua hyllyä ruoka-annoksille. Jokaista hyllyä pidättelee solenoidi 12V.
Hyllyt on tarkoitus vapauttaa päivittäin järjestyksessä tiettyinä kellonaikoina esim 1. hylly klo10:00, 2. hylly klo 14:00 ja 3.hylly klo 18:00.

Ainoa ratkaisu minkä itse keksin, on käyttää jokaiselle solenoidille omaa kellokytkintä joka antaa haluttuna kellonaikana pulssin solenoidille.
Mietin kuitenkin voisiko sen tehdä jotenkin yhdellä kellokytkimellä johon ohjelmoitaisiin kaikkien solenoidien laukaisuajat, jolloin hylly1 kippaisi 1. pulssin seurauksena ja hylly2 2. pulssin seurauksena jne...?
21683
Äänestä

Muut lukivat myös

Vastaukset 21

Vanhimmat

Järkytyin, jospa se ainoa kellokytkin vikaantuu.
Kellokytkimet melkein ilmaisia, joten yrittäisin hakea säästöjä muualta....

Äänestä
  • Ei tässä nyt säästöjä haeta. Mietin vaan, että olisiko mitenkään helposti toteutettavissa.

    Äänestä

Riippuu siitä millä tasolla olet valmis elektroniikkaa rakentelemaan. Jos tarjolla on jo hommaan sopivat yksittäiset kellokytkimet niin käytä niitä.

Mikään ei tietty estä rakentamasta esimerkiksi Arduinon, jonkun pic- laudan tai vaikkapa MP430 ympärille ajastinta ja siihen liittyvää valvontajärjestelmää. Kun laite kuitenkin tulee aika ankariin olosuhteisiin niin suosittelisin valmista ratkaisua.

Lisäksi suosittelisin ajastimesta riippumatonta ja akkuvarmistuksen avulla toimivaa valvontalaitetta, joka lähettää tekstiviestin mikäli ruokinta-automaatti ei toimi tai alueella ilmenee joku muu nopeaa toimintaa edellyttävä vikatilanne. Kauko-ohjattava kamera voisi myös olla hyvä olemassa.

Äänestä
  • Arduino on tuossa hyllyllä ollut odottelemassa jo kuohta vuoden.. olisi vain aikaa perehtyä asiaan.

    Äänestä

  • Vuoden hyllytettynä ollut arduino voi olla aika ottaa käyttöön! :)
    Ekana voisit katsoa vaikka mallia tästä IR-kaukosäädin ajastimesta, eli tuolla on vaan yksi ajastin, hommaa joutuu hieman jatkamaan:
    https://github.com/ossikoo/IR_RC_TMR
    Tuossa on yksinkertainen kellototeutus rtc.c/rtc.h tiedostoissa. Nyt tarvii siis kutsua kerran sekunnissa rtc_time_tick() funktiota, jotta kello kävelisi eteenpäin. Kellon ajan asetuksen voi vaikka toteuttaa niin, että laittaa töpselin seinään oikeaan aikaan.
    Seuraavana katsot rtc_activate_timer() funktiota. Sillä asetetaan hälytys. Nyt sulla on kolme solenoidia, joten pitää tehdä kolme ajastus aikaa yhden asemasta ja antaa niille vaikkapa numerot 1,2 ja 3, jotka voi palauttaa timerin aktoviduttua rtc_timer_on() funktiolta. Se käy helpoiten mulkkaamalla rtc_timer_t tyyppiin kentän lisää, jonka arvon palauttaa sitten. Lisäksi tekee kolme kappaletta rtc_timer_t tyyppiä olevia muuttujia.
    Nyt sitten voi herättää prosarin kerran sekunnissa idle-moodista ja tarkistaa rtc_timer_on():lla, vetääkö solenoidi vaiko ei. Jos solenoidi vetää, pitää johonkin out-porttiin kirjoittaa arvoksi ykkönen ja siellä pitää olla elektroniikkaa ohjaamassa solenoidia. Itse laittaisin n-FET:n, joka kestää solenoidin virran(tai npn-transistori etuvastus) ja diodin solenoidin kelan yli.
    ir_rx.c:stä löytyy timer-keskeytyksiä, joissa homma on toteutettu käytännössä. Kannattaa katsoa timer1:n compare-B keskeytysvektoria. Sinne tulee se solenoidin veto koodi. Eli saat melko helpolla totetutettua sekunnin vedon solenoidille tällä systeemillä.
    Eli unohdat kaiken muun koodin, mitä tuolla on ja kirjoitat siihen päälle vain omat jutut - se alla oleva ei saa IR-koodeja mistään, joten ei tule häiriöitä sieltä, mutta tikittää kyllä kerran sekunnissa etiä päin. F_CPU pitää asettaa oikein. ja debug-dumppia voi lukea sarjaportista - mikäli tuntuu homma siltä, ettei se toimi.

    Äänestä

Pelkällä kellokytkimellä ei onnistu vaan perään pitää laittaa pulssirele tai sellaiseksi asetettu monitoimirele. Lisäksi hyllyihin rajakytkimet, kun eka hylly on pudonnut, antaa sen rajakytkin pulssille pääsyn seuraavan hyllyn solkulle jne. Ei haittaa vaikka pulssi meneekin myös jo alhaalla oleville hyllysolkuille. Jos haet yhtä murikkaa jolla tämän tekee niin tutustu esim. Logoon tai vastaavaan pienois logiikkaan. Huom, pulssi tulee olla niin lyhyt ettei hylly ehdi alas muuten kaikki hyllyt tippuu samalla pulssilla.

Äänestä
  • Joo, näin teen. Kiitos vinkistä. Alkuperäinen ajatus oli, että haluan yrittää hyllyn pudottamista useaan kertaan jotta varmasti putoaa, mutta voinhan laittaa jonkin sortin hidastimen jolla saan aikaa useammalle pulssille.

    Äänestä

  • Jos käyttää ihan perusmallin mekaanista kellokytkintä, niin siinä minimi päälläoloaika kun 1 pykälä on alhaalla on n:5min. Tarvit jonkun n: 100ms pulssin solkulle ja siksi tarvitaan pulssirele, se siis antaa yhden pulssin kun sähköt kytkeytyy ohjauslinjaan vaikka syöttö olisi päällä mitenpitkään vaan. Muista sitten laittaa solkuille tappodiodit. Sitten tarkkana kytkentöjenkanssa kun käytetään verkkojännitettä ja 12v. Toisaalta turvallisempaa on käyttää noita digitaalisia 24v ajastin ja monitoimireleitä. Toisaalta jos päätät käyttää arduinoa niin laita siihen reaaliaikakello niin ajastus on tarkempaa ja varmempaa.

    Äänestä

  • Timer kirjoitti:

    Jos käyttää ihan perusmallin mekaanista kellokytkintä, niin siinä minimi päälläoloaika kun 1 pykälä on alhaalla on n:5min. Tarvit jonkun n: 100ms pulssin solkulle ja siksi tarvitaan pulssirele, se siis antaa yhden pulssin kun sähköt kytkeytyy ohjauslinjaan vaikka syöttö olisi päällä mitenpitkään vaan. Muista sitten laittaa solkuille tappodiodit. Sitten tarkkana kytkentöjenkanssa kun käytetään verkkojännitettä ja 12v. Toisaalta turvallisempaa on käyttää noita digitaalisia 24v ajastin ja monitoimireleitä. Toisaalta jos päätät käyttää arduinoa niin laita siihen reaaliaikakello niin ajastus on tarkempaa ja varmempaa.

    Ei tarvita mitään pulssireleitä kun laittaa rajakytkimen katkaisemaan solenoidin virran kun luukku on auennut.

    Äänestä

  • yksin.kertaista kirjoitti:

    Ei tarvita mitään pulssireleitä kun laittaa rajakytkimen katkaisemaan solenoidin virran kun luukku on auennut.

    Jos luukku jostakin syystä johtuen jumiutuu kiinni tai kuormaa on liikaa eikä solenoidi jaksa vetää niin rajakytkin ei koskaan katkaisisi solenoidilta virtaa. Solenoidi ylikuumenisi ja savu nousee. Ei erityisen hyvä juttu, jos solenoidin päällä on kasa tulenarkaa kuivarehua.

    Tallikäyttöön valvomattomasti toimimaan tarkoitetun laitteen pitää vikatilanteessakin olla turvallinen ja tuo jumiutuminen on hyvin todennäköinen vika.

    Äänestä

  • vikatilanteessa.savua kirjoitti:

    Jos luukku jostakin syystä johtuen jumiutuu kiinni tai kuormaa on liikaa eikä solenoidi jaksa vetää niin rajakytkin ei koskaan katkaisisi solenoidilta virtaa. Solenoidi ylikuumenisi ja savu nousee. Ei erityisen hyvä juttu, jos solenoidin päällä on kasa tulenarkaa kuivarehua.

    Tallikäyttöön valvomattomasti toimimaan tarkoitetun laitteen pitää vikatilanteessakin olla turvallinen ja tuo jumiutuminen on hyvin todennäköinen vika.

    No siihen ongelmaan on helppo ratkaisu, sopivasti mitoitettu hidas sulake.

    Äänestä

Miksi niiden luukkujen pitää toimia järjestyksessä, miksei voi olla vain jokaisella luukulla oma toimintahetki? Vai eikö luukuille mene kuin yksi johdinpari?

Äänestä
  • Silloin tarvitaan jokaiselle hyllylle oma kello sekä pulssirele tai sitten toteutus vaikka logolla.

    Äänestä

  • EiTurhaaSälää kirjoitti:

    Silloin tarvitaan jokaiselle hyllylle oma kello sekä pulssirele tai sitten toteutus vaikka logolla.

    Useampi piirinen digi-kello, kytketäajankin voi asettaa vaikka yhdeksi sekunniksi.

    Äänestä

Hyllypainoista aloituksessa ei ole juttua. Riittäkö sen voima aukaisemaan lukkoa kuormitettuna. Pienemmällä virralla selvitään jos käytetään laukaisuun moottoria, kuten esimerkiksi servoa. Systeemi voitaisiin rakentaa kokonaan 5V jolloin se toimii suoraan arduinon sähköillä. Tosin en syöttäisi servoille välttämättä 24/7 sähköä vaan kun toimita tarvitsee aktivoida.

Tämä vai yhtenä vaihtoehtona monista vaihtoehdoista.

Äänestä

Kaikkein helpointa on käyttää 4017 mikropiiriä joka on kymmenlaskuri, decade counter. Kun piirin pulssinastaan tule signaali (siltä yhdeltä kellokytkimeltä) niin piirin 10:stä outputista on yksi (ja vain yksi) vuorotellen ylhäällä.

Siis: kellokytkin signaali klo 10:00 -> 4017:n output 1 nousee ylös -> avaa solenoidin nro 1. Klo 14 vastaavasti output ja solenoidi 2 ja klo 18 nro 3. Klo 20 sitten ylimääräinen kellokytkentä, joka nollaa 4017 piirin, jotta seuraavan aamun klo 10 avaa taas nro 1:n.

Hiukka lisäeletkroniikkaa, joka pitää solenoideja auki vain sopivan lyhyen hetken. Ja tietysti tehoelektroniikka solenoifien virtaa ohjaamaan.

Äänestä
  • kopioi selaimeen koko rimpsu.

    Äänestä

  • niintoimii kirjoitti:

    kopioi selaimeen koko rimpsu.

    Näyttäisi olevan tuossa käsiteltynä kaikki oleelliset ja tarvittavat tiedot laitteen rakentelua varten. Ohjelmakoodikin löytyy valmiina joten siitä vaan kasaamaan. Jos kysyjä ei itse osaa tätä vaihetta niin Arduinon kanssa näperrelleitä ihmisiä löytyy paljon varsinkin nuoremmasta polvesta.

    Äänestä

  • Ei mistään löytyisi Suomalaista sivua?

    Äänestä

  • vinku-Intiaa kirjoitti:

    Ei mistään löytyisi Suomalaista sivua?

    Tuo opinnäyte on englanninkielinen eli aivan luettavaa tekstiä. Arduinon käyttämisestä oheislaitteiden ohjaukseen löytyy myös suomenkielinen sivusto ja kirja "Sulautetut".

    http://sulautetut.fi/

    Äänestä

Kommentoi aloitusta


nokukokö kirjoitti:

Hoi,

Olen rakentamassa hevosen ruokinta-automaattia joka on aitauksen viereen tuleva kaappi, jossa 3 saranoitua hyllyä ruoka-annoksille. Jokaista hyllyä pidättelee solenoidi 12V.
Hyllyt on tarkoitus vapauttaa päivittäin järjestyksessä tiettyinä kellonaikoina esim 1. hylly klo10:00, 2. hylly klo 14:00 ja 3.hylly klo 18:00.

Ainoa ratkaisu minkä itse keksin, on käyttää jokaiselle solenoidille omaa kellokytkintä joka antaa haluttuna kellonaikana pulssin solenoidille.
Mietin kuitenkin voisiko sen tehdä jotenkin yhdellä kellokytkimellä johon ohjelmoitaisiin kaikkien solenoidien laukaisuajat, jolloin hylly1 kippaisi 1. pulssin seurauksena ja hylly2 2. pulssin seurauksena jne...?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu