{"id":825,"date":"2018-05-06T21:30:20","date_gmt":"2018-05-06T21:30:20","guid":{"rendered":"http:\/\/hayperek.pl\/?p=825"},"modified":"2018-05-06T21:30:20","modified_gmt":"2018-05-06T21:30:20","slug":"pomiar-poziomu-i-temperatury-oleju-cz-2","status":"publish","type":"post","link":"https:\/\/hayperek.pl\/en\/2018\/05\/06\/pomiar-poziomu-i-temperatury-oleju-cz-2\/","title":{"rendered":"Pomiar poziomu i temperatury oleju &#8211; cz.2"},"content":{"rendered":"<p>Dzi\u015b kontynuujemy <a href=\"http:\/\/hayperek.pl\/en\/2018\/05\/05\/pomiar-poziomu-i-temperatury-oleju-cz-1\/\">wczorajszy temat<\/a> obs\u0142ugi czujnika poziomu i temperatury oleju. Naszym zadaniem jest znalezienie efektywnej metody pomiaru czasu trwania poszczeg\u00f3lnych segment\u00f3w przebiegu cyfrowego na wyj\u015bciu wspomnianego sensora.<\/p>\n<p>Na wst\u0119pie odrzucili\u015bmy ju\u017c wszelkie czysto software&#8217;owe metody odczytu, jako ma\u0142o dok\u0142adne i nieefektywne. Pozostaje nam zda\u0107 si\u0119 na sprz\u0119t. I tu z pomoc\u0105 przychodz\u0105 liczniki\/timery wbudowane w nasz mikrokontroler STM32F4. Cz\u0119\u015b\u0107 z nich posiada bardzo ciekaw\u0105 funkcjonalno\u015b\u0107 Input Capture, kt\u00f3ra stanowi idealne rozwi\u0105zanie dla naszego problemu.<\/p>\n<blockquote><p>C\u00f3\u017c to jest Input Capture? Jak to dzia\u0142a? <\/p><\/blockquote>\n<p>Timer pracuj\u0105cy w tym trybie zlicza w k\u00f3\u0142ko impulsy wewn\u0119trznego zegara &#8211; jego dzia\u0142anie nie r\u00f3\u017cni si\u0119 wi\u0119c szczeg\u00f3lnie od &#8222;normalnego&#8221; trybu pracy. Posiada on jednak dodatkowe wej\u015bcie cyfrowe, pod\u0142\u0105czone do uk\u0142adu wykrywania zbocza. W momencie pojawienia si\u0119 zbocza narastaj\u0105cego lub opadaj\u0105cego na tym\u017ce wej\u015bciu, stan licznika jest zapisywany &#8222;na boku&#8221; w dedykowanym rejestrze licznika. Dodatkowo mo\u017ce zosta\u0107 wywo\u0142ane przerwanie.<\/p>\n<blockquote><p>Jak wykorzysta\u0107 t\u0105 funkcjonalno\u015b\u0107?<\/p><\/blockquote>\n<p>Na wspomniane wej\u015bcie podajemy sygna\u0142 cyfrowy z czujnika. Ka\u017cde zbocze, zar\u00f3wno opadaj\u0105ce jak i narastaj\u0105ce b\u0119dzie generowa\u0107 przerwanie, w kt\u00f3ry odczytamy moment wykrycia zbocza. Warto zauwa\u017cy\u0107, i\u017c rejestracja czasu jest realizowana w spos\u00f3b czysto sprz\u0119towy, dzi\u0119ki czemu na dok\u0142adno\u015b\u0107 pomiaru nie wp\u0142yw \u017caden jitter &#8211; stan licznika zapisany w rejestrze okre\u015bla moment pojawienia si\u0119 zbocza, a nie rozpocz\u0119cia procedury obs\u0142ugi przerwania. <\/p>\n<p>Poni\u017cej przedstawiam schemat takiego rozwi\u0105zania.<\/p>\n<p><a href=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer.png\" alt=\"\" width=\"924\" height=\"705\" class=\"aligncenter size-full wp-image-839\" srcset=\"https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer.png 924w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer-600x458.png 600w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer-300x229.png 300w, https:\/\/hayperek.pl\/wp-content\/uploads\/2018\/05\/timer-768x586.png 768w\" sizes=\"auto, (max-width: 924px) 100vw, 924px\" \/><\/a><\/p>\n<p>Od strony oprogramowania pozostaje obs\u0142u\u017cenie zapisanego czasu wyst\u0105pienia zbocza. Po znalezieniu zbocza synchronizuj\u0105cego wraz z 20 milisekundowym segmentem w stanie niskim, kolejne pomiary mog\u0105 by\u0107 wykonywane ju\u017c sekwencyjnie. Ca\u0142o\u015b\u0107 logiki mo\u017cna wi\u0119c obs\u0142u\u017cy\u0107 prost\u0105 maszyn\u0105 stan\u00f3w. <\/p>\n<p>Jutro ci\u0105g dalszy zmaga\u0144 &#8211; zajmiemy si\u0119 pod\u0142\u0105czeniem elektrycznym oraz spr\u00f3bujemy pod\u0142\u0105czy\u0107 pomiar do naszych widget\u00f3w \ud83d\ude42 Zapraszam.<\/p>","protected":false},"excerpt":{"rendered":"<p>Dzi\u015b kontynuujemy wczorajszy temat obs\u0142ugi czujnika poziomu i temperatury oleju. Naszym zadaniem jest znalezienie efektywnej metody pomiaru czasu trwania poszczeg\u00f3lnych segment\u00f3w przebiegu cyfrowego na wyj\u015bciu wspomnianego sensora. Na wst\u0119pie odrzucili\u015bmy ju\u017c wszelkie czysto software&#8217;owe metody odczytu, jako ma\u0142o dok\u0142adne i nieefektywne. Pozostaje nam zda\u0107 si\u0119 na sprz\u0119t. I tu z pomoc\u0105 przychodz\u0105 liczniki\/timery wbudowane w [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":841,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":{"0":"post-825","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\/en\/wp-json\/wp\/v2\/posts\/825","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/comments?post=825"}],"version-history":[{"count":3,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/posts\/825\/revisions"}],"predecessor-version":[{"id":840,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/posts\/825\/revisions\/840"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/media\/841"}],"wp:attachment":[{"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/media?parent=825"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/categories?post=825"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hayperek.pl\/en\/wp-json\/wp\/v2\/tags?post=825"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}