Releiden ohjaus ?

Millainen kytkentä olisi paras ?

Kytkentään kuuluu 3 releen käämiä, nimetään ne A, B ja C.

Haluttu toiminta on se, että kolmea relettä ohjataan kahdella bitillä seuraavasti (ja tässä järjestyksessä):

Ohjausbitit Vetävät releet

00 Ei mikään
01 A
10 A ja B
01 A
00 Ei mikään
01 A
11 A ja C
01 A
00 Ei mikään

Tässä olisi tärkeää, ettei esiinny hallitsemattomia tilanmuutoksia.

siis:
Releet B ja C eivät saa koskaan vetää yhtäaikaa
Releen A tulee vetää yhtäjaksoisesti koko ohjauksen 01 - 10 - 01 sekä 01 - 11 -01 aikana

Myöskään tilanmuutos 01-10 ei saisi aiheuttaa ongelmaa. Jos ohjaukseen käyttää esim. PC:n sarjaportin kahta ohjausnastaa, niin entä, jos kaksi muuttuvaksi tarkoitettua bittiä eivät muutukaan täsmälleen yhtäaikaa ? Moisten erojen toki olettaisi jäävän miksrosekuntiluokkaan, eikä rele mekaanisena toimielimenä ehdo juuri reagoida alle mikrosekunnin kestäviin häiriötiloihin.

Toki täytynee ohjausohjelmaa koodattaessa erityisesti Windows -ympäristössä kiinnittää huomiota siihen, että voisiko 2 ohjausta tehdä samalla käyttöjärjestelmäkutsulla yhtäaikaa, ettei vaan skeduleri riistä suoritusvuoroa ohjauksia tekevältä säikeeltä. Jos ei, niin ainoa keino on ilmeisesti pyrkiä minimoimaan vahingot nostamalla säikeen prioriteetti maksimiin ennen ohjausta ja pudottamalla se takaisin normaaliksi kun ohjaukset on asetettu halutuiksi.
1169
Äänestä

Muut lukivat myös

Vastaukset 1

Vanhimmat

En tiiä mitä olet tekemässä ja miten aikakriittistä juttua, mutta ota toiminnoille käyttöön vaikka nelibittinen puskuri, johon sarjaportista lähetät toimintokomennon. Kaksi identtistä kahden bitin lähetystä ja jos tulevat oikein puskuriin niin toiminto suoritetaan.
Tuota toista kohtaa en tajua, eli mitä varten pitää sarjaporttiin saada kaksi ohjauskomentoa yhtä aikaa? Nopeuttako siinä tavoitellaan?

Äänestä

Kommentoi aloitusta


PCKytkijä kirjoitti:

Millainen kytkentä olisi paras ?

Kytkentään kuuluu 3 releen käämiä, nimetään ne A, B ja C.

Haluttu toiminta on se, että kolmea relettä ohjataan kahdella bitillä seuraavasti (ja tässä järjestyksessä):

Ohjausbitit Vetävät releet

00 Ei mikään
01 A
10 A ja B
01 A
00 Ei mikään
01 A
11 A ja C
01 A
00 Ei mikään

Tässä olisi tärkeää, ettei esiinny hallitsemattomia tilanmuutoksia.

siis:
Releet B ja C eivät saa koskaan vetää yhtäaikaa
Releen A tulee vetää yhtäjaksoisesti koko ohjauksen 01 - 10 - 01 sekä 01 - 11 -01 aikana

Myöskään tilanmuutos 01-10 ei saisi aiheuttaa ongelmaa. Jos ohjaukseen käyttää esim. PC:n sarjaportin kahta ohjausnastaa, niin entä, jos kaksi muuttuvaksi tarkoitettua bittiä eivät muutukaan täsmälleen yhtäaikaa ? Moisten erojen toki olettaisi jäävän miksrosekuntiluokkaan, eikä rele mekaanisena toimielimenä ehdo juuri reagoida alle mikrosekunnin kestäviin häiriötiloihin.

Toki täytynee ohjausohjelmaa koodattaessa erityisesti Windows -ympäristössä kiinnittää huomiota siihen, että voisiko 2 ohjausta tehdä samalla käyttöjärjestelmäkutsulla yhtäaikaa, ettei vaan skeduleri riistä suoritusvuoroa ohjauksia tekevältä säikeeltä. Jos ei, niin ainoa keino on ilmeisesti pyrkiä minimoimaan vahingot nostamalla säikeen prioriteetti maksimiin ennen ohjausta ja pudottamalla se takaisin normaaliksi kun ohjaukset on asetettu halutuiksi.

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