{
    "id": 823,
    "date": "2018-05-05T21:41:02",
    "date_gmt": "2018-05-05T21:41:02",
    "guid": {
        "rendered": "http:\/\/hayperek.pl\/?p=823"
    },
    "modified": "2018-05-05T21:41:02",
    "modified_gmt": "2018-05-05T21:41:02",
    "slug": "pomiar-poziomu-i-temperatury-oleju-cz-1",
    "status": "publish",
    "type": "post",
    "link": "https:\/\/hayperek.pl\/pl_pl\/2018\/05\/05\/pomiar-poziomu-i-temperatury-oleju-cz-1\/",
    "title": {
        "rendered": "Pomiar poziomu i temperatury oleju &#8211; cz. 1"
    },
    "content": {
        "rendered": "<p>Dzi\u015b przyszed\u0142 czas na przyjrzenie si\u0119 jednemu z pierwszych czujnik\u00f3w, kt\u00f3ry b\u0119dziemy obs\u0142ugiwa\u0107 bezpo\u015brednio przez nasze urz\u0105dzenie, a nie jedynie odczytywa\u0107 warto\u015b\u0107 pomiaru przez CAN lub diagnostyk\u0119. Mowa oczywi\u015bcie o tytu\u0142owym czujniku poziomu i temperatury &#8211; G266, kt\u00f3ry zamontowany zosta\u0142 bezpo\u015brednio w misce olejowej. Wiele wersji silnikowych posiada\u0142o go fabrycznie, jednak nic nie stoi na przeszkodzie aby w przypadku jego braku znale\u017a\u0107 odpowiedni\u0105 misk\u0119 olejow\u0105, wyposa\u017con\u0105 w mocowanie czujnika.<\/p>\n<p>Od strony elektrycznej, czujnik zasilany jest bezpo\u015brednio napi\u0119ciem +12V po zap\u0142onie. Generowany przeze\u0144 sygna\u0142 pomiarowy trafia bezpo\u015brednio do zestawu wska\u017anik\u00f3w. Temperatura oleju jest dost\u0119pna w jednym z blok\u00f3w pomiarowych licznika.<\/p>\n<blockquote><p>Jaki jest wi\u0119c sens odczytu czujnika przez nasze urz\u0105dzenie?<\/p><\/blockquote>\n<p>Ot\u00f3\u017c generowany przez czujnik sygna\u0142 niesie w istocie dwie informacje: temperatur\u0119 oraz poziom oleju. O ile pierwszy pomiar jest dost\u0119pny, to drugi ju\u017c niestety nie. \u015aci\u015blej &#8211; mo\u017cna jedynie odczyta\u0107 status OK\/NOT OK. Czy nie fajnie by by\u0142o m\u00f3c zobaczy\u0107 dok\u0142adny poziom oleju w milimetrach? \ud83d\ude42 Pewnie!<\/p>\n<p>Przyjrzyjmy si\u0119 jak wygl\u0105da przebieg cyfrowego sygna\u0142u z czujnika. Sekwencja rozpoczyna si\u0119 od opadaj\u0105cego zbocza, kt\u00f3re synchronizuje transmisj\u0119. Nast\u0119pnie mamy stan niski, trwaj\u0105cy dok\u0142adnie 20ms (<em>Tsync<\/em>). Kolejne, rosn\u0105ce zbocze rozpoczyna czas <em>Ta<\/em>, kt\u00f3ry reprezentuje temperatur\u0119 oleju. Nast\u0119pny cykl, w stanie niskim trwa r\u00f3wnie\u017c <em>Ta<\/em>. Ostatnia cz\u0119\u015b\u0107 przebiegu, po narastaj\u0105cym zboczu, trwaj\u0105ca <em>Tb<\/em> odpowiada pomiarowy poziomu oleju w milimetrach.<\/p>\n<p><a href=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal.png\" alt=\"\" width=\"897\" height=\"526\" class=\"aligncenter size-full wp-image-833\" srcset=\"https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal.png 897w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal-600x352.png 600w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal-300x176.png 300w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/signal-768x450.png 768w\" sizes=\"auto, (max-width: 897px) 100vw, 897px\" \/><\/a><\/p>\n<p>Jak pami\u0119tamy z jednego z naszych <a href=\"http:\/\/hayperek.pl\/pl_pl\/2018\/04\/09\/samochod-na-biurku-czyli-jak-testowac-cz-3\/\">poprzednich artyku\u0142\u00f3w<\/a>,na stanowisku testowym mamy mo\u017cliwo\u015b\u0107 emulowania czujnika za pomoc\u0105 p\u0142ytki ArduinoMini. <\/p>\n<blockquote><p>No dobrze, ale jak odczyta\u0107 taki sygna\u0142? Jak zmierzy\u0107 czasy, itd?<\/p><\/blockquote>\n<p>Nie jest to trywialny problem &#8211; na pewno na wst\u0119pie odrzucamy wszelkie metody odczytu &#8222;w p\u0119tli&#8221;, czekania na zbocze, itd. <\/p>\n<blockquote><p>Dlaczego?<\/p><\/blockquote>\n<p>Jakiekolwiek pr\u00f3by czysto softwareowego odczytu, w systemie, w kt\u00f3rym w ci\u0105gu 20 milisekund mo\u017ce wypali\u0107 kilka-kilkana\u015bcie przerwa\u0144, s\u0105 z g\u00f3ry skazane na pora\u017ck\u0119. Ogromny jitter pomiaru skutecznie utrudni synchronizacj\u0119 do pierwszego zbocza i b\u0119dzie znacz\u0105co wp\u0142ywa\u0142 na dok\u0142adno\u015b\u0107 pomiaru. Blokowanie przerwa\u0144 na tak d\u0142ugi czas te\u017c nie jest po\u017c\u0105dane. Musimy wi\u0119c skorzysta\u0107 z rozwi\u0105za\u0144 bardziej hardwareo&#8217;wych. Ale o tym wi\u0119cej napisz\u0119 jutro. Zapraszam!<\/p>",
        "protected": false
    },
    "excerpt": {
        "rendered": "<p>Dzi\u015b przyszed\u0142 czas na przyjrzenie si\u0119 jednemu z pierwszych czujnik\u00f3w, kt\u00f3ry b\u0119dziemy obs\u0142ugiwa\u0107 bezpo\u015brednio przez nasze urz\u0105dzenie, a nie jedynie odczytywa\u0107 warto\u015b\u0107 pomiaru przez CAN lub diagnostyk\u0119. Mowa oczywi\u015bcie o tytu\u0142owym czujniku poziomu i temperatury &#8211; G266, kt\u00f3ry zamontowany zosta\u0142 bezpo\u015brednio w misce olejowej. Wiele wersji silnikowych posiada\u0142o go fabrycznie, jednak nic nie stoi na [&hellip;]<\/p>",
        "protected": false
    },
    "author": 1,
    "featured_media": 837,
    "comment_status": "closed",
    "ping_status": "open",
    "sticky": false,
    "template": "",
    "format": "standard",
    "meta": {
        "footnotes": ""
    },
    "categories": [
        3
    ],
    "tags": [],
    "class_list": {
        "0": "post-823",
        "1": "post",
        "2": "type-post",
        "3": "status-publish",
        "4": "format-standard",
        "5": "has-post-thumbnail",
        "6": "hentry",
        "7": "category-stodni",
        "9": "post-with-thumbnail",
        "10": "post-with-thumbnail-large"
    },
    "_links": {
        "self": [
            {
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts\/823",
                "targetHints": {
                    "allow": [
                        "GET"
                    ]
                }
            }
        ],
        "collection": [
            {
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts"
            }
        ],
        "about": [
            {
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/types\/post"
            }
        ],
        "author": [
            {
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/users\/1"
            }
        ],
        "replies": [
            {
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/comments?post=823"
            }
        ],
        "version-history": [
            {
                "count": 5,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts\/823\/revisions"
            }
        ],
        "predecessor-version": [
            {
                "id": 836,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts\/823\/revisions\/836"
            }
        ],
        "wp:featuredmedia": [
            {
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/media\/837"
            }
        ],
        "wp:attachment": [
            {
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/media?parent=823"
            }
        ],
        "wp:term": [
            {
                "taxonomy": "category",
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/categories?post=823"
            },
            {
                "taxonomy": "post_tag",
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/tags?post=823"
            }
        ],
        "curies": [
            {
                "name": "wp",
                "href": "https:\/\/api.w.org\/{rel}",
                "templated": true
            }
        ]
    }
}