Program do pomiaru prędkości obrotowej silnika impulsowego

Tematy związane z tworzeniem dużych aplikacji. Zaganiednia dotyczące architektury oraz zasad tworzenia optymalnych rozwiązań.
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Witam mam problem z napisaniem programu do pomiaru prędkości obrotowej silnika impulsowego.Korzystam z LabView 8.5 i karty NI PCI6010.Sygnał do karty pomiarowej jest przesyłany z transoptora optycznego SHARP GP1A05.Z góry dziękuję za pomoc.
1.JPG
1.JPG (156.64 KiB) Przejrzano 9937 razy
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: bogdani »

Witaj

Może napisz z czym dokładnie masz problem?
Zaktualizuj profil i podaj wersję LabVIEW.

Jak często chcesz mierzyć prędkość obrotową?

Najprościej to podłączyć impulsator do wejścia licznikowego (na karcie masz 2) i co określony czas odczytywać wartość licznika i wiesz wtedy ile impulsów przyszło.
Potem już prosta matematyka wyliczasz prędkość uwzględniając ilość impulsów na obrót.

bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Chcę aby to był pomiar ciągły. W jaki sposób mogę uzyskać zliczanie impulsów?Czy to jest to opcja Count Edges?
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: bogdani »

Tak, właśnie Count Edges poda ci liczbę zliczonych impulsów.

Zrób program działający w pętli kręcącej się ze stałym okresem czasu.
Za każdym razem odczytaj liczbę impulsów i odejmij od poprzedniej wartości to otrzymasz ilość impulsów w jednostce czasu. Uwzględniając ilość impulsów na obrót w prosty sposób wyznaczysz sobie prędkość obrotową.
Zwróć jednak uwagę na okres kręcenia się pętli żeby uwzględnić minimalną prędkość obrotową.

bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Witam. Dziękuję bardzo za pomoc. A jakiej pętli najlepiej do tego użyć?
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: bogdani »

No myślę że pętla While na początek wystarczy.

Pisałeś już coś w LabVIEW ?

bogdani
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Pisałem tylko że miałem przerwę półroczną i nie wyszła mi ona na dobre.
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Witam.W załączniku przesyłam swojego VI do pomiaru prędkości obrotowej silnika impulsowego.Nie wiem tylko jak zrobić za każdym razem odejmowanie liczby impulsów od poprzedniej wartości aby otrzymać ilość impulsów w jednostce czasu. Z góry dziękuję za pomoc. Pozdrawiam.
Załączniki
10.vi
(74.38 KiB) Pobrany 412 razy
bogdani
Administrator
Posty: 1315
Rejestracja: 30 lip 2003 00:00
Wersja środowiska: LabVIEW 2015
Lokalizacja: Ruda Śląska
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: bogdani »

Witaj

Całkiem nieźle, ale trochę nie do końca poprawnie.
Odczytujesz dwa razy wartość z licznika, zupełnie niepotrzebnie.
Dodatkowo DAQAssistant nie do końca poprawnie skonfigurowany. Powinno być 1 Sample (jak na obrazku poniżej), ponieważ mniemam, iż interesuje ciebie aktualna wartość licznika.
DAQ Assistant
DAQ Assistant
Kod można zmodyfikować do takiego jak poniżej i powinien spełnić oczekiwane zadanie.
Kod LabVIEW
Kod LabVIEW
BlokDiagram.png (5.74 KiB) Przejrzano 9757 razy
Powyższy kod daje ci liczbę impulsów na sekundę. Jeszcze musisz to podzielić przez liczbę impulsów na obrót i będziesz miał ilość obrotów w ciągu sekundy.

bogdani
Ostatnio zmieniony 10 paź 2009 18:21 przez bogdani, łącznie zmieniany 1 raz.
Ktoś ci pomógł na forum? Podziękuj dając pochwałę.

Obrazek Obrazek Obrazek
Peter
Posty: 30
Rejestracja: 13 maja 2008 18:04
Kontakt:

Re: Program do pomiaru prędkości obrotowej silnika impulsowego

Post autor: Peter »

Teraz program działa idealnie.Dziękuję bardzo za pomoc.Pozdrawiam.
ODPOWIEDZ