logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak odczytać dane z czytnika RFID BxDesktop v.1 przez PHP i COM8?

electric00 30 Maj 2019 10:10 879 6
REKLAMA
  • #1 17987983
    electric00
    Poziom 12  
    Posty: 183
    Pomógł: 2
    Ocena: 4
    Witam

    posiadam czytnik kart mkeia:
    BxDesktop v.1 - Pulpitowy czytnik transponderów RFID Unique

    czytnik widziany pod windowsem 10 jako COM8 (emulowany - FTTDI)

    czy jest możliwa obsługa takiego czytnika z poziomu php, chodzi mi o odczyt danych:
    jak np. numer karty która jest przykładana do takiego czytnika

    potrzebuję obsłużyć to z poziomu języka PHP

    za szczere chęci pomocy serdecznie dziękuję
  • REKLAMA
  • #2 17988256
    TvWidget
    Poziom 39  
    Posty: 4418
    Pomógł: 472
    Ocena: 697
    Z jakiego powodu chcesz robić to przez PHP ?
  • REKLAMA
  • #3 17988260
    hindoos
    Poziom 36  
    Posty: 3757
    Pomógł: 290
    Ocena: 663
    Najlepiej będzie stworzyć nowy program np. w C# albo C++ który obsłuży komunikację z portem COM. PHP może wywoływać program funkcją exec.
    Alternatywnie - program może działać przez cały czas i zapisywać numer karty do pliku do którego PHP też ma dostęp. PHP może wówczas odczytywać plik a z niego także datę odczytu (żeby wiedzieć czy jak dawno temu nastąpiło zeskanowanie kodu).
  • REKLAMA
  • #4 17989839
    JacekCz
    Poziom 42  
    Posty: 8670
    Pomógł: 760
    Ocena: 1463
    hindoos napisał:
    Alternatywnie - program może działać przez cały czas i zapisywać numer karty do pliku do którego PHP też ma dostęp. PHP może wówczas odczytywać plik a z niego także datę odczytu (żeby wiedzieć czy jak dawno temu nastąpiło zeskanowanie kodu).


    Jeśli już, to ta opcja. Trzeba sobie wyrażnie podać założenia: kod PHP wybonuje się podczas jednego requestu i NIE MOŻE choćby ze względów czasowych realizować transmisji szeregowej, mającej zupełnie inny przebieg w czasie.
  • #5 17989848
    hindoos
    Poziom 36  
    Posty: 3757
    Pomógł: 290
    Ocena: 663
    Request PHP (a tym bardziej taki który czeka na zwrot z programu) może sobie lecieć długo, w ramach określonego limitu. Zaleta jest taka, że program exe od razu po odebraniu kompletnych danych kończy działanie i zakończenie procesu wznawia działanie tego wiszącego requestu PHP. Przy poolingu zmian w pliku nie dzieje się to natychmiast tylko z ustalonym interwałem. Dużo zależy od konkretnego zastosowania, a tego autor nie przekazał.
  • REKLAMA
  • #6 17989873
    malcompl
    Poziom 13  
    Posty: 49
    Pomógł: 9
    Ocena: 7
    JacekCz napisał:
    kod PHP wybonuje się podczas jednego requestu

    Male sprostowanie: PHP to nie tylko web, może działać niezależnie od web serwera.
    Podobnie jak większość języków skryptowych, choć mało popularne, może służyć do tworzenia skryptów i "programików" uruchamianych spod konsoli - Command line usage.
  • #7 17989878
    hindoos
    Poziom 36  
    Posty: 3757
    Pomógł: 290
    Ocena: 663
    Chociaż osobiście nie mam z PHP CLI za dobrych doświadczeń... Wolę odblokować maximum execution time i uruchamiać takie long running taski curlem przez crona

Podsumowanie tematu

LABEL_AI_GENERATED
Użytkownik poszukuje sposobu na odczyt danych z czytnika RFID BxDesktop v.1 za pomocą PHP, który jest widoczny w systemie Windows 10 jako COM8. Odpowiedzi sugerują, że lepszym rozwiązaniem byłoby stworzenie programu w C# lub C++, który obsłuży komunikację z portem COM, a PHP mógłby wywoływać ten program za pomocą funkcji exec. Alternatywnie, program mógłby zapisywać odczytane numery kart do pliku, z którego PHP mógłby je później odczytać. Podkreślono, że PHP nie jest idealnym narzędziem do obsługi transmisji szeregowej w czasie rzeczywistym, a także że PHP może działać niezależnie od serwera webowego, co otwiera możliwości użycia go w skryptach konsolowych.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA