Pomiar przemieszczenia za pomocą myszki komputerowej
Pomiar przemieszczenia za pomocą myszki komputerowej
Witam
Przymierzam się do zrealizowania pewnego tematu.
Potrzebny mi pomiar przemieszczenia dwóch części maszyny wytrzymałościowej:
jedna część przemieszcza się w zakresie 500mm - jest to ruch pionowy uchwytu maszyny w jednym kierunku (góra - dół)
druga część przemieszcza się w zakresie ok 250mm - ruch poziomy wskaźnika siłomierza (lewo - prawo)
Dokładność którą chciałbym uzyskać to mniej niż 1mm...
Jest pomysł aby wykorzystać sensor myszki komputerowej, np rolki w myszy kulkowej
Czy istnieje możliwość wykorzystania myszki komputerowej pod USB (kulkowa byłaby prostsza w rozbieraniu mechanizmu) do pomiaru przemieszczenia w labview?
Czy ktoś spotkał się z czymś takim?
Pozdrawiam
chamakus
Przymierzam się do zrealizowania pewnego tematu.
Potrzebny mi pomiar przemieszczenia dwóch części maszyny wytrzymałościowej:
jedna część przemieszcza się w zakresie 500mm - jest to ruch pionowy uchwytu maszyny w jednym kierunku (góra - dół)
druga część przemieszcza się w zakresie ok 250mm - ruch poziomy wskaźnika siłomierza (lewo - prawo)
Dokładność którą chciałbym uzyskać to mniej niż 1mm...
Jest pomysł aby wykorzystać sensor myszki komputerowej, np rolki w myszy kulkowej
Czy istnieje możliwość wykorzystania myszki komputerowej pod USB (kulkowa byłaby prostsza w rozbieraniu mechanizmu) do pomiaru przemieszczenia w labview?
Czy ktoś spotkał się z czymś takim?
Pozdrawiam
chamakus
Pomiar przemieszczenia za pomocą myszki komputerowej
Bardzo ciekawy pomysł, chętnie zobaczyłbym działanie takiego programu jak będzie skończony, więc informuj o postępach:)
Ale do rzeczy, w LabVIEW masz bloczki:

Przetestuj czy ich działanie Ci odpowiada do swojego zastosowanie. Pod windowsem LV używa directX aby odczytać położenie kursora.
Co do myszki to przemyśl sprawę, bo jednak optyczna ma bardziej zwarty mechanizm (kulkowa korzysta z rolek, a optyczna ma wszystko na jednej płytce PCB). Optyka też jest dokładniejsza, jeśli jest dobra. Przy zwykłych tanich myszkach optycznych uzyskasz teoretyczne 800 DPI (punktów na cal), co powinno dać przy moich obliczeniach "na szybko" dokładność rzędu 0,03175 mm, więc nawet uwzględniając kiepską jakość wykonania myszki, w 1mm powinieneś się zmieścić;)
//EDIT:
Te bloczki niestety pokazują tylko aktualną pozycję kursora na ekranie, zależną od rozdzielczości... Trzeba by zaimplementować obsługę raw mouse albo usb raw. To drugie znalazłem w gotowym przykładzie tutaj: https://decibel.ni.com/content/docs/DOC-3422 , ale sam jeszcze nie testowałem. Z drugiej strony, takie rozwiązanie miałoby dodatkową zaletę - nie byłoby zależne od ustawień kursora w windowsie.
Ale do rzeczy, w LabVIEW masz bloczki:

Przetestuj czy ich działanie Ci odpowiada do swojego zastosowanie. Pod windowsem LV używa directX aby odczytać położenie kursora.
Co do myszki to przemyśl sprawę, bo jednak optyczna ma bardziej zwarty mechanizm (kulkowa korzysta z rolek, a optyczna ma wszystko na jednej płytce PCB). Optyka też jest dokładniejsza, jeśli jest dobra. Przy zwykłych tanich myszkach optycznych uzyskasz teoretyczne 800 DPI (punktów na cal), co powinno dać przy moich obliczeniach "na szybko" dokładność rzędu 0,03175 mm, więc nawet uwzględniając kiepską jakość wykonania myszki, w 1mm powinieneś się zmieścić;)
//EDIT:
Te bloczki niestety pokazują tylko aktualną pozycję kursora na ekranie, zależną od rozdzielczości... Trzeba by zaimplementować obsługę raw mouse albo usb raw. To drugie znalazłem w gotowym przykładzie tutaj: https://decibel.ni.com/content/docs/DOC-3422 , ale sam jeszcze nie testowałem. Z drugiej strony, takie rozwiązanie miałoby dodatkową zaletę - nie byłoby zależne od ustawień kursora w windowsie.
Re: Pomiar przemieszczenia za pomocą myszki komputerowej
Na wstępie wielkie dzięki za szybkie zainteresowanie tematem
miłe zaskoczenie.
Jestem absolutnie "świeży" jeżeli chodzi o pisanie w LabView. Na co dzień jedynie używam maszyny wytrzymałościowej do badań materiałowych opartej na LabView - jednak jestem użytkownikiem gotowego systemu.
Dzisiaj właśnie padł pomysł aby zamiast potencjometrów (wiąże się to z większymi kosztami... potencjometry, zasilacz karta DAQ itp...) zastosować sensor z myszki.
W najbliższym czasie biorę się za LabView, aby przetestować przykładowe OKNA oraz pomysły, które wskazałeś.
Gdy wpadną jeszcze jakieś pomysły proszę o zamieszczenie
Mam nadzieje, że pomożesz gdy pojawi się jakieś pytanie
a pewnie będzie nie jedno...
Podsumowując, dzięki za szybką odpowiedź.
Pozdrawiam

Jestem absolutnie "świeży" jeżeli chodzi o pisanie w LabView. Na co dzień jedynie używam maszyny wytrzymałościowej do badań materiałowych opartej na LabView - jednak jestem użytkownikiem gotowego systemu.
Dzisiaj właśnie padł pomysł aby zamiast potencjometrów (wiąże się to z większymi kosztami... potencjometry, zasilacz karta DAQ itp...) zastosować sensor z myszki.
W najbliższym czasie biorę się za LabView, aby przetestować przykładowe OKNA oraz pomysły, które wskazałeś.
Gdy wpadną jeszcze jakieś pomysły proszę o zamieszczenie

Mam nadzieje, że pomożesz gdy pojawi się jakieś pytanie

Podsumowując, dzięki za szybką odpowiedź.
Pozdrawiam
Ostatnio zmieniony 19 cze 2012 21:03 przez chamakus, łącznie zmieniany 1 raz.
-
- Posty: 103
- Rejestracja: 17 gru 2011 21:33
- Wersja środowiska: LabVIEW 2011
Re: Pomiar przemieszczenia za pomocą myszki komputerowej
Witam,
jedyny podobny projekt do Twojego jaki widziałem jest na tym filmie:
http://www.youtube.com/watch?v=kSnnX1FwiWQ
Można wykorzystać rolkę i policzyć jej obroty- obrót można potraktować jako obwód koła. Aby obliczyć drogę można pomnożyć obwód koła razy ilość obrotów.
To taki pomysł "na szybko"
powodzenia...
jedyny podobny projekt do Twojego jaki widziałem jest na tym filmie:
http://www.youtube.com/watch?v=kSnnX1FwiWQ
Można wykorzystać rolkę i policzyć jej obroty- obrót można potraktować jako obwód koła. Aby obliczyć drogę można pomnożyć obwód koła razy ilość obrotów.
To taki pomysł "na szybko"
powodzenia...
Pomiar przemieszczenia za pomocą myszki komputerowej
Nad rolką tez myślałem, ale użycie tamtego bloczka dawało dziwne rezultaty jeśli chodzi o scrolla. Poza tym dałby scroll dokładność 1mm?
-
- Posty: 383
- Rejestracja: 17 lis 2006 00:00
- Wersja środowiska: LabVIEW 2009
- Lokalizacja: Warszawa
Pomiar przemieszczenia za pomocą myszki komputerowej
Węszę tu kłopoty z jednoczesnym używaniem programu i muszki jako sensora. Jak się domyślam chciałbyś obsługiwać program jedną myszką i mierzyć drugą myszką? 2 myszki będą się kłócić o kursor. Poruszać nim będzie ta ostatnio ruszona. Nie widzę też możliwości wyboru, z której myszki chcesz mierzyć z poziomu LV. Chyba że przez jakieś systemowe odwołania. Widziałem kiedyś bibliotekę do LV obsługującą myszki podłączone do portu COM.
Inną tanią alternatywą byłoby wykorzystanie potencjometrów i karty dźwiękowej jako 2-kanałowego DAQ. Nadawanie przez sygnału o stałej częstotliwości wyjściem słuchawkowym i mierzenie za pomocą wejścia mikrofonowego spadku amplitudy działa bardzo dobrze.
Inną tanią alternatywą byłoby wykorzystanie potencjometrów i karty dźwiękowej jako 2-kanałowego DAQ. Nadawanie przez sygnału o stałej częstotliwości wyjściem słuchawkowym i mierzenie za pomocą wejścia mikrofonowego spadku amplitudy działa bardzo dobrze.
Pomiar przemieszczenia za pomocą myszki komputerowej
vugie, dlatego ja widzę szansę z bezpośrednią obsługą portu USB. Co prawda nie da się wyłączyć poruszania kursorem w trakcie badania (no chyba, że jest na to sposób w windowsie, by jedna myszka nie poruszała kursorem, ale była widoczna w systemie), ale jeżeli kursor się przesunie wzdłuż ekranu to chyba nikomu to przeszkadzać nie będzie.
-
- Posty: 383
- Rejestracja: 17 lis 2006 00:00
- Wersja środowiska: LabVIEW 2009
- Lokalizacja: Warszawa
Pomiar przemieszczenia za pomocą myszki komputerowej
Pod warunkiem że Chamakus pogodzi się z tym, że nie da nic się zrobić myszką podczas pomiaru. W szczególności go zatrzymać.
Pomiar przemieszczenia za pomocą myszki komputerowej
To jest racja, ale nie znamy założeń czy program w LabVIEW będzie kontrolować działanie maszyny wytrzymałościowej (a raczej nie będzie). Poza tym można dodać obsługę klawiatury ("wciśnij ENTER aby przerwać pomiar") oraz stworzyć fizyczne zabezpieczenia, jak przycisk awaryjny wyłączający/zatrzymujący maszynę. No i jak widziałem działanie typowej maszyny wytrzymałościowej, to pomiar był bardzo krótki, o wiele dłużej trwało choćby zamocowanie próbki.
Re: Pomiar przemieszczenia za pomocą myszki komputerowej
Sterowanie maszyną pozostanie mechaniczne za pomocą guzika i dźwigni (ruch góra/dół oraz zero) - tzn. bez sterowania z labview.
W labview chciałbym rejestrować samo przemieszczenie uchwytu maszyny (wydłużenie próbki) oraz ruch wskazówki siłomierza.
Czy klasyczna statyczna próba rozciągania - na osi Y siła, a na osi X wydłużenie próbki.
Myślałem o wykorzystaniu 2 rolek znajdującej się przy kulce w myszce "kulkowej".
W labview chciałbym rejestrować samo przemieszczenie uchwytu maszyny (wydłużenie próbki) oraz ruch wskazówki siłomierza.
Czy klasyczna statyczna próba rozciągania - na osi Y siła, a na osi X wydłużenie próbki.
Myślałem o wykorzystaniu 2 rolek znajdującej się przy kulce w myszce "kulkowej".
-
- Posty: 289
- Rejestracja: 01 maja 2012 14:14
- Wersja środowiska: LabVIEW 2012
- Lokalizacja: Farum
Pomiar przemieszczenia za pomocą myszki komputerowej
Nieprosciej by bylo podlaczyc kamerke i zrobic analize obrazu?? Na wysiegnikach mozesz zamontowac podzialke. No i latwiej przeprowadzic analizy i raporty poparte filmikami...
Rozbierz sowmiarke elektroniczna i wykorzystaj jej mechanizm...
Idac dalej laserowe dalmierze z wyjsciem analogowym...
Rozbierz sowmiarke elektroniczna i wykorzystaj jej mechanizm...
Idac dalej laserowe dalmierze z wyjsciem analogowym...
-
- Posty: 96
- Rejestracja: 20 lut 2012 12:30
- Wersja środowiska: LabVIEW 2014
- Lokalizacja: Katowice / Ruda Śląska
Pomiar przemieszczenia za pomocą myszki komputerowej
chamakus, nie chcę szerzyć tutaj defetyzmu, ale widzę dużo potencjalnych problemów w twoim pomyśle realizacji projektu. Dostanie się do takich "surowych" danych ze sterownika myszki, zablokowanie ruszania po kursora ekranie itd. może być uciążliwe, zmiana czułości myszki w panelu sterowania prawdopodobnie rozkalibruje wszystko, dojechanie myszką do krawędzi ekranu popsuje wyniki itd. itp. Problematyczne.
Rozumiem, że projekt ma być nisko budżetowy więc nie proponuje rozwiązania "kup dwa dobre enkodery i kartę pomiarową NI".
Proponuje natomiast rozwiązanie:
- kup dwa tanie enkodery (przy odrobinie szczęścia prawdopodobnie da się odzyskać te z myszki. W starszych myszkach one są raczej duże i możliwe do odlutowania, wyciągnięcia z płytki) albo 2 potencjometry.
- zbuduj prostą płytkę z tanim mikrokontrolerem obsługującym komunikację po RS-232 (można też dodać mostek RS - USB jeżeli komputer nie ma serial portu). Nada się prawie każdy mikrokontroler, jakieś Atmegi, PICi lub cokolwiek. Jeżeli wybierzesz mikrokontroler ze sprzętową obsługą enkoderów kwadraturowych, uprości to i tak niezbyt skomplikowany program na mikrokontroler. Dużo mikrokontrolerów da się za darmo zsamplować, więc to nie obciąża jakoś znacząco budżetu. Jeżeli nie masz dostępu do żadnego sprzętu elektronicznego (lutownica, programator) można kupić jakiś klon arduino, albo inną płytkę ewaluacyjną z mikrokontrolerem.
W ten sposób można zbudować system pomiarowy, który zbierze dane z enkoderów/potencjometrów i wyśle je grzecznie do LabVIEW po RS-232 (COM) albo USB (wirtualny COM). Odczytanie takich danych w LabVIEW jest bardzo proste dzięki bloczkom VISA.
W ten sposób za niewielkie pieniądze i tylko nieznacznie większym nakładem pracy można złożyć dedykowany system który będzie działał zawsze, a nie tylko wtedy, gdy ustawi się myszkę w dobrym miejscu na ekranie, nie przestawi się prędkości poruszania kursora w Windowsie albo ktoś przez przypadek potrąci biurko na którym leży ta druga myszka.
Rozumiem, że projekt ma być nisko budżetowy więc nie proponuje rozwiązania "kup dwa dobre enkodery i kartę pomiarową NI".
Proponuje natomiast rozwiązanie:
- kup dwa tanie enkodery (przy odrobinie szczęścia prawdopodobnie da się odzyskać te z myszki. W starszych myszkach one są raczej duże i możliwe do odlutowania, wyciągnięcia z płytki) albo 2 potencjometry.
- zbuduj prostą płytkę z tanim mikrokontrolerem obsługującym komunikację po RS-232 (można też dodać mostek RS - USB jeżeli komputer nie ma serial portu). Nada się prawie każdy mikrokontroler, jakieś Atmegi, PICi lub cokolwiek. Jeżeli wybierzesz mikrokontroler ze sprzętową obsługą enkoderów kwadraturowych, uprości to i tak niezbyt skomplikowany program na mikrokontroler. Dużo mikrokontrolerów da się za darmo zsamplować, więc to nie obciąża jakoś znacząco budżetu. Jeżeli nie masz dostępu do żadnego sprzętu elektronicznego (lutownica, programator) można kupić jakiś klon arduino, albo inną płytkę ewaluacyjną z mikrokontrolerem.
W ten sposób można zbudować system pomiarowy, który zbierze dane z enkoderów/potencjometrów i wyśle je grzecznie do LabVIEW po RS-232 (COM) albo USB (wirtualny COM). Odczytanie takich danych w LabVIEW jest bardzo proste dzięki bloczkom VISA.
W ten sposób za niewielkie pieniądze i tylko nieznacznie większym nakładem pracy można złożyć dedykowany system który będzie działał zawsze, a nie tylko wtedy, gdy ustawi się myszkę w dobrym miejscu na ekranie, nie przestawi się prędkości poruszania kursora w Windowsie albo ktoś przez przypadek potrąci biurko na którym leży ta druga myszka.
Ostatnio zmieniony 20 cze 2012 15:48 przez may, łącznie zmieniany 1 raz.
Pomiar przemieszczenia za pomocą myszki komputerowej
may, jednak troszkę ten defetyzm szerzysz;)
Właśnie przetestowałem program https://decibel.ni.com/content/docs/DOC-3422 i działa nieźle z moim bezprzewodowym logitechem m185. Niestety moja kabelkowa mysz, której normalnie używam w domu ostatnio się popsuła, więc nie mogę na niej sprawdzić. Jedyny minus jest taki, że nie wykrywa mi osi X, ale póki nie przetestuję na jakiejś innej myszy (może z touchpadem spróbuję zaraz), to trudno powiedzieć gdzie leży przyczyna.
Ruszanie kursorem na touchpadzie nie wpływa na wyniki otrzymywane z myszki, ani wyniki z myszki nie wpływają na pozycję kursora (tylko z programu trzeba usunąć wywołanie dlla, który ustawia pozycję kursora). Przy okazji nauczyłem się nowej funkcjonalności w LV, ponieważ urządzenie, do którego chcemy się odwołać musi być zainstalowane w systemie ze specjalnymi sterownikami. Takie sterowniki w minutę się tworzy kreatorem i mogą one się odwoływać do dowolnego urządzenia USB podłączonego do komputera. Później urządzenie jest wykrywane w LV właśnie jako USB raw.
//EDIT:
Touchpada niestety nie da się przetestować bo nie jest podłączony przez USB, ale przez PS/2. Jak upoluję jakąś najprostszą mychę na kablu to zobaczę:)
Właśnie przetestowałem program https://decibel.ni.com/content/docs/DOC-3422 i działa nieźle z moim bezprzewodowym logitechem m185. Niestety moja kabelkowa mysz, której normalnie używam w domu ostatnio się popsuła, więc nie mogę na niej sprawdzić. Jedyny minus jest taki, że nie wykrywa mi osi X, ale póki nie przetestuję na jakiejś innej myszy (może z touchpadem spróbuję zaraz), to trudno powiedzieć gdzie leży przyczyna.
Ruszanie kursorem na touchpadzie nie wpływa na wyniki otrzymywane z myszki, ani wyniki z myszki nie wpływają na pozycję kursora (tylko z programu trzeba usunąć wywołanie dlla, który ustawia pozycję kursora). Przy okazji nauczyłem się nowej funkcjonalności w LV, ponieważ urządzenie, do którego chcemy się odwołać musi być zainstalowane w systemie ze specjalnymi sterownikami. Takie sterowniki w minutę się tworzy kreatorem i mogą one się odwoływać do dowolnego urządzenia USB podłączonego do komputera. Później urządzenie jest wykrywane w LV właśnie jako USB raw.
//EDIT:
Touchpada niestety nie da się przetestować bo nie jest podłączony przez USB, ale przez PS/2. Jak upoluję jakąś najprostszą mychę na kablu to zobaczę:)
-
- Posty: 103
- Rejestracja: 17 gru 2011 21:33
- Wersja środowiska: LabVIEW 2011
Pomiar przemieszczenia za pomocą myszki komputerowej
Rozumiem, że ten układ pomiarowy będzie wykorzystany w badaniach naukowych (praca inżynierska/magisterska). Proszę zwrócić uwagę na to, że wszelkiego rodzaju komisje lubią podważać nieatestowane układy pomiarowe. Zaraz pojawiają się pytania- jaka dokładność? A jak Pan się dowiedział że akurat taka? A czy tu nie ma zbyt dużego błędu itd. U mnie na polibudzie były zamontowane czujniki zegarowe na prasach. Miały atesty, działały wiele lat, miały dokładność 0,01mm, niepotrzebne było zasilanie. Chociaż z drugiej strony wolałbym zobaczyć realizację tego projektu w Labview:)
Pomiar przemieszczenia za pomocą myszki komputerowej
O coś zapytać komisja musi:) A czy problemem byłoby przesunięcie czujnika 10 razy po jakiejś suwnicy o znanej długości aby sprawdzić błędy? Poza tym wątpię, by ktoś wymagał od tak niskobudżetowego projektu atestów i dokładności 0.01mm. Zresztą patrząc po projektach inżynierskich/magisterskich jakie powstają w rękach moich kolegów, wolę nie gdybać jakiej jakości projekty powstawać będą za 10 lat (które oczywiście będą bronione na 5!). Teraz w sumie liczy się by coś było ciekawe i ładnie wyglądało, a jak coś ma działać i mieć atesty, to jest po prostu kupowane:)