2012-03-30 2 views
0

I 및 다른 사람들은 Arduino를 Ubuntu 서버 (Ubuntu 10.04 64 비트 실행)와 함께 사용하는 프로젝트에서 작업하고 있습니다. 현재 장치가 연결되어 있고 Arduino가/dev/ttyUSB0에 데이터를 저장하는 것을 볼 수 있습니다. 나는 그것을 성공적으로 다른 파일에 cat 할 수있다.시리얼 (FTDI)에서 php/python 스크립트로 입력

우리는이 정보가 파이썬이나 PHP 스크립트를 통해 번역 될 MySQL 데이터베이스를 가지고 있습니다. 직렬 포트의 입력을 해당 스크립트의 입력으로 가져 오는 방법을 알아야합니다. 장치는 적어도 초당 20 회 응답합니다. 이 스크립트는 기본적으로 어떤 응답을 취해서 해당 행을 MySQL 데이터베이스에 삽입하기 만하면됩니다.

도움을 줄 수있는 사람이 있습니까?

답변

0

잘하고있는 것 같습니다. 코드에있는 파일처럼 /dev/ttyUSB0을 직접 열 수도 있지만 쓰기 및 읽기 액세스는 일정 속도 (직렬 전송 속도, ...)로 수행해야하므로 문제가 될 수 있습니다 (그러나 여전히 가능합니다. 시도하지는 않았지만 configure the TTY으로 직접 쓸 수 있습니다.)

누락 된 링크는 /dev/ttyUSB0에 직렬 포트처럼 액세스해야합니다.

당신은 당신이 언급 한 파이썬 : PySerial을 사용할 수 있습니다. 또한 다른 운영 체제에 맞게 코드를 이식 할 수 있습니다. 빠른 apt-get install python-serial 또는 apt-get install python3-serial가 작동해야합니다. PySerial introduction에서 많은 사람들이 있습니다

import serial 
ser = serial.Serial('/dev/ttyUSB0', 9600) 
while 1: 
    ser.readline() 

:

당신은 Arduino playground에서 몇 가지 예제를 가지고있다.

+0

고마워요! 나는 그것을 들여다보고 이번 주에 우리가 알아 낸 것을 알려 줄 것입니다! :) – emilyk

+0

그것도 그렇게 어렵지 않았습니다. 나는 PHP에서 그것을 썼고 fgets와 fopen과 while 루프를 사용했다 ... 매력처럼 작동했다! – emilyk

+0

TTY를 구성하지 않는 한, TTY를 쓰면 해당 방법에 문제가있을 수 있습니다. 그러나 만약 당신이 그것을 읽고 그것을 당신이 좋아하는대로 작동, 괜찮아. 가장 큰 문제는이 방법이 Windows와 같은 다른 운영 체제와 호환되지 않는다는 것입니다. 그러나 당신이 신경 쓰지는 않습니다 :-) –