Pomiar przemieszczenia za pomocą myszki komputerowej

Jeśli masz coś do powiedzenia w sprawie LabVIEW napisz. Tutaj są tematy, których nie można uściślić do innych działów.
Awatar użytkownika
chamakus
Posty: 37
Rejestracja: 19 cze 2012 15:20
Wersja środowiska: LabVIEW 2017

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: chamakus »

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
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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:
Obrazek

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.
Awatar użytkownika
chamakus
Posty: 37
Rejestracja: 19 cze 2012 15:20
Wersja środowiska: LabVIEW 2017

Re: Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: chamakus »

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
Ostatnio zmieniony 19 cze 2012 21:03 przez chamakus, łącznie zmieniany 1 raz.
dzojstik22
Posty: 103
Rejestracja: 17 gru 2011 21:33
Wersja środowiska: LabVIEW 2011

Re: Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: dzojstik22 »

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...
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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?
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: vugie »

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.
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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.
vugie
Posty: 383
Rejestracja: 17 lis 2006 00:00
Wersja środowiska: LabVIEW 2009
Lokalizacja: Warszawa

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: vugie »

Pod warunkiem że Chamakus pogodzi się z tym, że nie da nic się zrobić myszką podczas pomiaru. W szczególności go zatrzymać.
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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.
Awatar użytkownika
chamakus
Posty: 37
Rejestracja: 19 cze 2012 15:20
Wersja środowiska: LabVIEW 2017

Re: Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: chamakus »

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".
Jamal79
Posty: 289
Rejestracja: 01 maja 2012 14:14
Wersja środowiska: LabVIEW 2012
Lokalizacja: Farum

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Jamal79 »

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...
may
Posty: 96
Rejestracja: 20 lut 2012 12:30
Wersja środowiska: LabVIEW 2014
Lokalizacja: Katowice / Ruda Śląska

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: may »

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.
Ostatnio zmieniony 20 cze 2012 15:48 przez may, łącznie zmieniany 1 raz.
Obrazek
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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ę:)
dzojstik22
Posty: 103
Rejestracja: 17 gru 2011 21:33
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: dzojstik22 »

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:)
Garreth
Posty: 74
Rejestracja: 28 gru 2011 14:13
Wersja środowiska: LabVIEW 2011

Pomiar przemieszczenia za pomocą myszki komputerowej

Post autor: Garreth »

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:)
ODPOWIEDZ