{
    "id": 950,
    "date": "2018-05-18T20:51:36",
    "date_gmt": "2018-05-18T20:51:36",
    "guid": {
        "rendered": "http:\/\/hayperek.pl\/?p=950"
    },
    "modified": "2018-05-18T20:51:36",
    "modified_gmt": "2018-05-18T20:51:36",
    "slug": "pomiedzy-dwoma-swiatami-czyli-pomiar-wartosci-analogowych",
    "status": "publish",
    "type": "post",
    "link": "https:\/\/hayperek.pl\/pl_pl\/2018\/05\/18\/pomiedzy-dwoma-swiatami-czyli-pomiar-wartosci-analogowych\/",
    "title": {
        "rendered": "Pomi\u0119dzy dwoma \u015bwiatami, czyli pomiar warto\u015bci analogowych"
    },
    "content": {
        "rendered": "<p>Dotychczas rozpatrywanymi \u017ar\u00f3d\u0142ami danych dla wy\u015bwietlanych pomiar\u00f3w by\u0142y diagnostyka oraz magistrala CAN. W ob przypadkach mamy do czynienia z cyfrow\u0105 transmisj\u0105 danych. R\u00f3wnie\u017c fabtyczny sensor temperatury oraz poziomu oleju dostarcza nam sygna\u0142 w formie cyfrowej. Musimy jednak pami\u0119ta\u0107, \u017ce spora cz\u0119\u015b\u0107 u\u017cytkownik\u00f3w b\u0119dzie chcia\u0142a doda\u0107 nowe czujniki, m.in. ci\u015bnienia do\u0142adowania, ci\u015bnienia oleju, temperatury spalin, itp. Zdecydowana wi\u0119kszo\u015b\u0107 z nich b\u0119dzie dostarcza\u0107 jednak sygna\u0142 analogowy &#8211; czy to w formie napi\u0119cia czy zmiennej rezystancji.<\/p>\n<blockquote><p>W jaki spos\u00f3b pod\u0142\u0105czymy je do procesora?<\/p><\/blockquote>\n<p>Nasz uk\u0142ad STM32F407 posiada wbudowany przetwornik analogowo-cyfrowy o 12-bitowej rozdzielczo\u015bci i maksymalnym napi\u0119ciu wej\u015bciowym do 3.3V. Nie musimy wi\u0119c u\u017cywa\u0107 zewn\u0119trznych uk\u0142ad\u00f3w scalonych &#8211; wszystko co potrzebne mamy ju\u017c na pok\u0142adzie \ud83d\ude42<\/p>\n<blockquote><p>Czy to oznacza, \u017ce mo\u017cemy &#8222;podpi\u0105\u0107&#8221; czujnik bezpo\u015brednio do przetwornika?<\/p><\/blockquote>\n<p>Niestety nie&#8230; Po pierwsze ka\u017cdy rodzaj czujnika wymaga\u0107 b\u0119dzie w zasadzie zaprojektowania odpowiedniego uk\u0142adu interfesuj\u0105cego &#8211; szczeg\u00f3lnie dotyczy to sensor\u00f3w rezystancyjnych. Po drugie, je\u015bli czujnik b\u0119dzie dostarcza\u0142 napi\u0119cie przekraczaj\u0105ce 3.3V mo\u017ce doj\u015b\u0107 do uszkodzenia  mikrokontrolera. <\/p>\n<blockquote><p>Jak wi\u0119c &#8222;dopasowa\u0107&#8221; poziomy napi\u0119\u0107><\/p><\/blockquote>\n<p>Przyjrzyjmy si\u0119 prostszemu przypadkowi czujnika, kt\u00f3ry dostarcza sygna\u0142 pomiarowy w formie napi\u0119cia. Poni\u017cszy schemat przedstawia przyk\u0142ad uk\u0142adu interfesuj\u0105cy. <\/p>\n<p><a href=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/schemat-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/schemat-1.png\" alt=\"\" width=\"410\" height=\"334\" class=\"aligncenter size-full wp-image-953\" srcset=\"https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/schemat-1.png 410w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/schemat-1-300x244.png 300w\" sizes=\"auto, (max-width: 410px) 100vw, 410px\" \/><\/a><\/p>\n<p>Rezystory <em>R17<\/em> oraz <em>R18<\/em> tworz\u0105 klasyczny dzielnik napi\u0119cia. Odpowiednio dobieraj\u0105c ich warto\u015bci, napi\u0119cie na wej\u015bciu <em>ANALOG_IN<\/em> mo\u017cna obni\u017cy\u0107 do wymaganego poziomu 3.3V na wyj\u015bciu <em>ADC_INPUT<\/em>. <a href=\"https:\/\/pl.wikipedia.org\/wiki\/Dioda_Zenera\">Dioda Zenera<\/a> D2 s\u0142u\u017cy jako zabezpieczenie przed przekroczeniem dopuszczalnego napi\u0119cia. <\/p>\n<blockquote><p>Dlaczego? Przecie\u017c dzielnik powinien je obni\u017cy\u0107.<\/p><\/blockquote>\n<p>Przyjmijmy, \u017ce czujnik dostarcza sygna\u0142 w zakresie 0-5V, a dzielnik przekszta\u0142ca je na 0-3.3V. Ale co je\u015bli np. gdzie\u015b przetrze si\u0119 przew\u00f3d lub nast\u0105pi zwarcie i na wej\u015bciu pojawi si\u0119 nagle 12V? W takim przypadku dioda zenera nie dopu\u015bci do wzrostu powy\u017cej jej napi\u0119cia przewodzenia, czyli 3.3V.<\/p>\n<p>Kondensator <em>C25<\/em> t\u0142umi zak\u0142\u00f3cenia indukowane w przewodach po\u0142\u0105czeniowych oraz wyg\u0142adza nieco przebieg sygna\u0142u.<\/p>",
        "protected": false
    },
    "excerpt": {
        "rendered": "<p>Dotychczas rozpatrywanymi \u017ar\u00f3d\u0142ami danych dla wy\u015bwietlanych pomiar\u00f3w by\u0142y diagnostyka oraz magistrala CAN. W ob przypadkach mamy do czynienia z cyfrow\u0105 transmisj\u0105 danych. R\u00f3wnie\u017c fabtyczny sensor temperatury oraz poziomu oleju dostarcza nam sygna\u0142 w formie cyfrowej. Musimy jednak pami\u0119ta\u0107, \u017ce spora cz\u0119\u015b\u0107 u\u017cytkownik\u00f3w b\u0119dzie chcia\u0142a doda\u0107 nowe czujniki, m.in. ci\u015bnienia do\u0142adowania, ci\u015bnienia oleju, temperatury spalin, itp. [&hellip;]<\/p>",
        "protected": false
    },
    "author": 1,
    "featured_media": 954,
    "comment_status": "closed",
    "ping_status": "open",
    "sticky": false,
    "template": "",
    "format": "standard",
    "meta": {
        "footnotes": ""
    },
    "categories": [
        3
    ],
    "tags": [],
    "class_list": {
        "0": "post-950",
        "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\/950",
                "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=950"
            }
        ],
        "version-history": [
            {
                "count": 3,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts\/950\/revisions"
            }
        ],
        "predecessor-version": [
            {
                "id": 955,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/posts\/950\/revisions\/955"
            }
        ],
        "wp:featuredmedia": [
            {
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/media\/954"
            }
        ],
        "wp:attachment": [
            {
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/media?parent=950"
            }
        ],
        "wp:term": [
            {
                "taxonomy": "category",
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/categories?post=950"
            },
            {
                "taxonomy": "post_tag",
                "embeddable": true,
                "href": "https:\/\/hayperek.pl\/pl_pl\/wp-json\/wp\/v2\/tags?post=950"
            }
        ],
        "curies": [
            {
                "name": "wp",
                "href": "https:\/\/api.w.org\/{rel}",
                "templated": true
            }
        ]
    }
}