Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

Kontrolleri kokkujooksmine, miks?

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    #31
    Vs: Kontrolleri kokkujooksmine, miks?

    Esiteks suured tänud heade näpunäidete eest. Sain jälle hulka targemaks.
    Katsetustest. Komplekt stendil kus pikk andurite juhe lahti, töötab järjepanu siiamaani häireteta. Homme pusin sellega edasi, panen vist ühe CAT-5 kaabli, kus RS on keerupaari peal ja toide kahel ülejäänud paaril. Seni olen nii talitanud ja on töötanud. Side kiirus on madal - 9600 bd. Megabittide puhul muidugi nii ei teeks.
    Topoloogiast. Seni oli täht: 2 +3 andurit. Seega ei pan'd ka terminaatorit. Olen aru saanud et nii madalatel kiirustel pole eriti vahet. Või kuidas?
    Simuleerisin kodus ka asja, häireallikaks kopterimudeli pilusilmne akulaadur (päris vinge plära tekitab, raadio kahiseb nagu Vaikne ookean...). Peale mõningaid koodi täiustusi jäi silma riivama vaid I2C bussil oleva ekraani solkimine. Mõningane, vähem kui enne! Samal siinil on veel kell, SD-kaart ja EEPROM. Võib-olla sealt tule midagi...
    Leidsin ka lahtise eelpingestustakisti RS485-liinil. Testin edasi kuid hakkas silma asjaolu (peale vigade parandamist), et E2060 termoandurite konverterid annavad väga kummalist signaali (nad kõik). Eelpingestatud RS-liinil on pinge kuskil 2V, signaal kõigub mõlemale poole. Massa M300 UH-sügavusemõõtja saadab normaalselt (signaal kõigub tolle keskjoone ümber 1V amplituudiga). Termomeetrid aga lasevad ainult nivood allapoole !? Nii ükshaaval proovides kui ka kõik 4 tk. liinil. Peabki nii olema??? Seni olen arvanud et see on viga. Samas kontroller loeb seda küll.
    Nii et...pean vist ikkagi simuleerima lasuvigasid liinil (mingi PICiga) et veenduda oma koodi suutlikkuses. Võimalik tõesti et seal on veel kala.
    Väliste elektriliste häirete kohta kuulan huviga soovitusi edasi.

    /Felch

    PS. Side toimub bit-bäng UARTiga kahel kiirusel: 9600 ja 19200 (kuna andurid on sellised ja paremat proset hetkel pole). Seega frame overrun jms lipud puuduvad.
    - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
    - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

    Comment


      #32
      Vs: Kontrolleri kokkujooksmine, miks?

      Kas see andur paarsuse biti ka formeerib? See kontroll natuke aitaks.

      Kena oleks kasutada nt Hemmingi koodi.
      Lihtsam variant suudaks parandada baidis ühe vea ja avastada 2.
      See oli meil arvutis kasutusel 68-72 aastatel mälu kontrolliks.
      Kontrollitake bitigruppide paarsust.
      Võimalik kasutada, kui kuidagi muidu ei saa.

      Comment


        #33
        Vs: Kontrolleri kokkujooksmine, miks?

        Termoandurid kasutavad MODBUSi ja seal on päris keerukas CRC arvutamine. M300 UH-vidin lihtsalt liidab baite ja jätab tulemuse 1 baidiseks. Nii on tootjad heaks arvanud... Mina lihtsalt loen ja interpreteerin. Vahest vist valesti.
        Samas...logide analüüs näitab et ka ekraani solkimisel on üles tähendet daata valiidne. Äkki ikkagi kala minu koodi muudes osades?
        E2060 anduri signaal jääb ikkagi imelikuks.
        - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
        - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

        Comment


          #34
          Vs: Kontrolleri kokkujooksmine, miks?

          Süüdistuskokkuvõte:
          1) Ei ole termikaid
          2) Star-topoloogia ! Peab olema kett !
          3) bitbang - ehk siis softiga emuleeritud UART ? Kui jah, siis kuidas käib biti check ? If trallalalaaa then shallaalaa ? Aga kuidas oleks kui sampliks signaali ikka impulsi keskelt ? Vahet ei ole, kas kiirus on 9600 või 1M, overshoot on sama draiveri ja liini puhul ikka sama ja kui liiga vara sämplid, sämplid overshooti.

          Imenippide asemel peaksid põhiasjad korda tegema, siis hakkab kõik tööle !
          Karistus - ma arvan et midagi kerget, nt. neljakskiskumine Opelitega.

          Comment


            #35
            Vs: Kontrolleri kokkujooksmine, miks?

            Palun vabandust, suutsin soft-uart'ist mööda vaadata.

            See-eest pakun välja lihtsa katse softi vea välistamiseks: kui pärast viga andva pordi soft-uart koodi (ajutist loomulikult) väljakommenteerimist probleemid jätkuvad, on viga rauas.
            If you think education is expensive, try ignorance.

            Comment


              #36
              Vs: Kontrolleri kokkujooksmine, miks?

              Softuart jäi ka mul vaatamatta. Siin kohal ma maksaks softi jamade vältimise eest extra 10 eeka et osta prose kus lisa uart. Uuematel prosedel REMAP võimalus ka seega plaat suht lihtne. Vähemalt cortex(STM32..) ja uuemad dsPIC33fjxxMC seeria kivid. Tõenäolised ka GP seeria omad. SMT32 maksis elfas 77 eeka. 16F628 maksis midagi 60 eega kanti kui viimati vaatasin.
              võrrelda saab vastavalt 8051 ja relee arvutit. Saan aru et sa ei fänna teisi prosesid peale microchipi, seega dspic võiks olla enam vähem, veits kallim kui cortex aga loodetavasti mplab siis ei pea seda vahetama.
              Modelleerimises ja tootmises kehtivad:
              1. Avariikindel vooluring lühistab kõik teised.
              2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

              Comment


                #37
                Vs: Kontrolleri kokkujooksmine, miks?

                Esmalt postitatud felch poolt
                Termoandurid kasutavad MODBUSi ja seal on päris keerukas CRC arvutamine.
                See MODBUS on tõesti lihtne kood - 51 lk oli sissejuhatust.

                Koodini veel ei jõudnud.

                Aga kui kõik vead on programmis parandatud ja ikka kakleb, siis võib ju viia liini takistus alla.
                Paned saatjale kaks transsi lisaks ja teed takistiga lisakütte.
                Seda negatiivset poolt pole tegelikut vist väga vajagi.
                Ise tead.

                Comment


                  #38
                  Vs: Kontrolleri kokkujooksmine, miks?

                  Tegelt saab galvaaniliselt eraldatud asjaga 2 traadiga vedades teha ka loogikaelementide peal. tõsi mitte praktiline aga dif sõltub kust punktist vaadata. Üldiselt pika maa peale vahel RF parem, nordic SPI liidesega chip on odavam kui kaabel. Auto CRC, Auto retransmit ja ack. sisse ehitatud.
                  Nordic Semiconductor nRF24L01+. Transceiver chip operating in the 2.4GHz band. Take all the coolness of the nRF2401A and add some extra pipelines, buffers,

                  5tk riiulis, pole hääli sisse ajanud aga vanem vend töötas neil hästi.
                  ModBus on jh hää asi sest standard, CNC tarkvaragi nõus selle kaudu steppereid kamandama.
                  Modelleerimises ja tootmises kehtivad:
                  1. Avariikindel vooluring lühistab kõik teised.
                  2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

                  Comment


                    #39
                    Vs: Kontrolleri kokkujooksmine, miks?

                    Esmalt postitatud A.R. poolt
                    See MODBUS on tõesti lihtne kood - 51 lk oli sissejuhatust.
                    http://www.modbus.org/docs/Modbus_Ap...ocol_V1_1b.pdf
                    Koodini veel ei jõudnud.
                    Vahemärkuse korras: järjestiksiini jaoks saab transpordiprotokolli kirjelduse siit: http://www.modbus.org/docs/Modbus_ov...al_line_V1.pdf
                    If you think education is expensive, try ignorance.

                    Comment


                      #40
                      Vs: Kontrolleri kokkujooksmine, miks?

                      Pakun veel ühe lahenduse hoopis teise kandi pealt. Nimelt toiteks kasutad LM2674 kivi, kas toitepoolel on piisava mahtuvusega (e. kordades suurema, kui näidisskeemis) elektrolüütkonded + korralik keraamiline. Ja ei tee paha ka üks lisadrossel sama ahela vahele. Oli mul kord juhus, kust ebameeldivad häired just sealt tulid (nb! kõik ahelad olid ühendatud nagu peab ja lühikeselt).

                      Comment


                        #41
                        Vs: Kontrolleri kokkujooksmine, miks?

                        Jah, ma mõtlesin ka korra toite lisasilumise peale, LC ahel on vahel.
                        Vedasin täna uue kaabli nagu peab, CAT-5, kett-topoloogia ja termikad. Sedapuhku ei aidanud aga CAT-5 on ikka parem küll kui näljane 4-sooneline valvekaabel.
                        Siis hakkasin andureid tolle endisel kahtlasel segmendil välja lülitama. Neil saab jumperiga toitte maha võtta. Ja...tundub et üks neist oligi süüdlane. Kui nüüd homme hommukul vigu esineneud ei ole, siis...on mu koodis ikkagi viltes vigade händler. Koodi ju ei tohi kottida, kas siinilt tuleb daata või automaadivalang
                        Soft_UART pole mingi geniaalne vaimusähvatus vaid Myke Predko koodikojast. Töötab küll aga eks raud ole ikka parem. Muide, ta ei tee kohe shalllalalaa vaid ootab ikka biti detektimise katkestuses pool biti kestust ja siis alles trallalala Päris UART sämplib vist 3 korda.
                        Kahtlane andur saab mulle nüüd olema häirete simulaatoriks !
                        Muide, ossiga vaadates ei saanud midagi aru - kõik nagu ok.

                        Tänud kaasa mõtlemast! Annan teada, mis edasi saab.
                        - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                        - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                        Comment


                          #42
                          Vs: Kontrolleri kokkujooksmine, miks?

                          Esmalt postitatud felch poolt
                          Koodi ju ei tohi kottida, kas siinilt tuleb daata või automaadivalang .... Soft_UART ... Päris UART
                          Aga seda sa ei raatsi et võtad:
                          ühe päris arvuti ja
                          ühe päris UART-i ja
                          ühe lihtsa soft programmikese (Home made) ja
                          paned kõik ilusti kirja mida seal liinil räägitakse.

                          Ja siis ootad ära vea ja siis ütled et otsi ja
                          sellest 30 MB logist otsitakse välja see koht ja see käsk, mis on vigane.

                          Ja siis ütld sa nagu tavaliselt ja ikka ja alati et
                          iga loll oleks ju pidanud selle peale tulema et ...

                          Comment


                            #43
                            Vs: Kontrolleri kokkujooksmine, miks?

                            Tegelikult võiks teha nii, et kuulaks päris arvuti päris UARTiga lihtsalt liini pealt ja logiks.Ainult et mitme megasest binaty-fileest kahtlast kohta on üsna raske otsida. Aga proovima peab. Ma ei saa ju lubada et sellised vead korduvad. Andur võib suvalisel ajal rikki minna ja liini saasta täis genereerida. Ja kui masin arvab selle peale, et tuleks kõik kraanid avada, pole enam väga lõbus... Noh, natuke muidugi on ka

                            Veel parem mõte: saadan prose oma päris ja hetkel vaba UARTI kaudu kogu daata välja. Siis jääb masina arusaam kuuldust ka logisse.
                            - Vend Hieronymus tunneb Motorola toodete nimekirja kõige paremini, las tema ütleb.
                            - Motorola poolt loodud kiipide hulgas ei ole teda üles tähendatud. - Tähendab: ta on Intelist!

                            Comment


                              #44
                              Vs: Kontrolleri kokkujooksmine, miks?

                              tänu A.R. logiplaanile tuli veel üks mõte - kuna süsteemis andmevahetus 2 kiirusega siis ehk juhtub keiss kus ühe kiiruse pakett tähendab ka teise kiiruse juures mõnele seadmele midagi , et andur arvab et miskit räägitakse talle ja teeb ka noka lahti, ega tema tea et kiirus vale.

                              Comment


                                #45
                                Vs: Kontrolleri kokkujooksmine, miks?

                                Esmalt postitatud felch poolt
                                Ainult et mitme megasest binaty-fileest kahtlast kohta on üsna raske otsida.

                                Veel parem mõte: saadan prose oma päris ja hetkel vaba UARTI kaudu kogu daata välja. Siis jääb masina arusaam kuuldust ka logisse.
                                Üks ei sega teist.
                                Ma ajasin nii hiljuti viga taga. UV riist mõõtis spektrit ja oskas ajuti jamada.
                                Seal moodustusid sellised käsugrupid. LOGI Ver. N++ tundis nad ära ja natuke kommis.
                                Ja nende gruppide vahel sai siis otsida erinevust.

                                Möödunud aastal Ülenurmes näidatud roboti loo puhul oli näiteks nii
                                et paari päeva jooksul suutis riist mõne "toru" ära lõhkuda.
                                Sai kirjutatud selline logi mis püüdis RS232 pealt kinni toru vahetuskäsu,
                                pani käima videokaamera, tegi vahetusest salvestuse ja ootas.
                                Siis ca tunni pärast asi kordus. Ühte sellist vahetust ma seal näitasingi.

                                Sai nii korda et pole enam vaja olnud togida. Tuli neli kruvi kinni keerata.
                                Riistal, muidugi , ja kõvasti kinni keerata.
                                Mootorite tugiplaadid natuke paindusid, nii 0,1 - 0,3 mm.


                                Sagedusest:
                                Oli RS hiir. Käis 2 aastat.
                                Siis ühel päeval oli teine sagedus ja käis selle uuega edasi.

                                Comment

                                Working...
                                X