JavaScript로 서보를 제어하는 방법은 무엇입니까?GPIO - raspberry pi - PWM - JavaScript
답변
@ 마이클이 말했듯이, 당신이 원하는 것이 분명하지 않습니다. 그러나 나는 당신이 원하는 것을 추측하려고 노력한다. 특히, 자바 스크립트를 어디에 넣을 지 정확히 명확하지 않습니다.
하드웨어 측면에서 보면 병렬 포트를 사용하여 서보를 제어 할 수 있습니다. 서보 사양에 따라 인터페이스 회로가 필요하지 않을 수도 있습니다.
소프트웨어 측면에서 보면 자바 스크립트를 사용한다는 의미에 달려 있습니다. 당신이 라즈베리 파이가 자바 스크립트를 실행하기를 원한다면 일어날 일이 아닙니다.
그러나 라즈베리 파이에서 제공 할 웹 페이지를 설정 한 다음 다른 PC (또는 그 문제에 대해서는 나무 딸기 파이)를 사용하여 해당 페이지를 탐색하면 제어 할 수 있습니다. 그런 다음 LAMP 스택 (예 : Apache, PHP, linux, MySQL)을 설치할 수 있습니다. 그런 다음 자바 스크립트/HTML 페이지에서 AJAX를 사용하여 PHP 페이지에 요청을 보낼 수 있습니다. 그러면 PHP 페이지가 쉘 스크립트 또는 유사한 것을 실행하여 병렬 포트로 출력합니다.
위의 솔루션은 다양한 방법으로 구현 될 수 있습니다. 컴파일 된 C에서부터 파이썬을 해석하는 쉘 스크립트에 이르기까지 거의 모든 웹 서버와 모든 서버 측 코드와 함께이 코드를 구현할 수 있습니다. 당신은 프로그래밍을 선호하는 것을 결정할 필요가 있습니다. (자바 스크립트 외에).
@Ryrich에 동의합니다.이 문제는 라스베리 파이 포럼에서 여러 번 해결되었을 것입니다. 달성하고자하는 목표에 대해 구체적으로 설명하면됩니다. 그런 다음 물어 보거나, 당신이 찾고있는 것을 알고 나면 포럼을 통해 찾아 볼 수 있습니다.
예를 들어, 다른 PC의 브라우저를 사용하여 라스베리 파이 하드웨어를 제어하고 싶다고합시다. 그렇다면, 당신은 다음과 같은 하위 문제로 문제를 분할 할 수 있습니다
- (1) 스크립트 라즈베리 파이 병렬 포트에 PWM 서보를 연결하거나 (0) 인터페이스 하드웨어 병렬 포트를 제어 할 실행 라즈베리 PI에
- 2 PWM 서보를 제어하는 병렬 포트를 사용 라즈베리 PI에
- (3) 웹 서버 서보 제어 데이터
질문 1의 경우 라스베리 파이 포럼을 살펴보아야합니다. 이를 달성하기위한 수십 가지 방법이있을 것입니다. 솔직히 C, Java, 쉘 스크립트 등을 사용할 수 있습니다.
질문 2의 경우, 서보가 필요로하는 PWM 신호의 종류를 찾아보고 병렬 포트를 사용하여이 데이터를 보내는 방법을 찾아야합니다. (질문 1을 풀었다.)
질문 3의 경우 라스베리 파이에 명령을 실행하는 데 사용할 수있는 모든 종류의 웹 서버가 필요합니다. LAMP를 사용할 수 있습니다 (매우 무거운 무게, 아마도 과장). lighttpd를 다른 서버 측 스크립팅 언어와 함께 사용할 수 있습니다. 몽구스를 Lua 서버 측 스크립팅과 함께 사용할 수 있습니다. 이러한 서버 측 스크립트는 질문 1의 실행 파일을 호출하고 데이터를 전송합니다.
질문 4는 순전히 사용자 인터페이스 (버튼, 슬라이더 등)로, 웹 서버로 데이터를 보내 서보를 제어하여 병렬 포트로 보냅니다. 이것은 HTML과 Javascript입니다.
1-3 대신 대신 다른 옵션이 있습니다. 그들을 병렬 포트를 제어하는 단일 스크립트 나 실행 파일로 결합 할 수있을뿐만 아니라 javascript/html 페이지를 제공하고 제어 요청을 해석 할 수 있습니다. 그러나 이것은 고급 옵션 것입니다. 매우 효율적이며 가벼운 잠재력을 지니고 있지만 비교 대상으로는 많은 작업이 필요합니다. 예를 들어 C 또는 Java에서이를 프로그래밍 할 수 있습니다.
아마도 라스베리 파이 포럼을 검색하는 것이 더 나을 것입니다. – ryrich
이것은 매우 모호한 질문입니다. 현재 코드의 관련 부분은 어떻게 생겼으며 특히 문제가있는 부분은 무엇입니까? – Michael
[WebIOPi] (http://code.google.com/p/webiopi/) –