
Eclipse UPM 리포지토리는 일반적으로 사용되는 다양한 센서 및 액추에이터를위한 소프트웨어 드라이버를 제공합니다. 이 소프트웨어 드라이버는 Eclipse MRAA API에 대한 호출을 통해 기본 하드웨어 플랫폼 (또는 마이크로 컨트롤러) 및 첨부 된 센서와 상호 작용합니다.
프로그래머는 센서의 해당 헤더 파일을 포함하고 관련 센서 클래스를 인스턴스화하여 각 센서의 인터페이스에 액세스 할 수 있습니다. 일반적인 사용 사례에서 생성자는 센서, 사용 된 I/O 프로토콜 및 센서의 핀 위치를 식별하는 매개 변수를 기반으로 센서를 초기화합니다. UPM 2.0 기간 동안 대부분의 경우 문자열 식별자를 허용하는 과부하 된 생성자를 통해 센서 초기화를 수행 할 수도 있습니다.
라이브러리와 함께 제공되는 일반 C 및 C ++ 인터페이스를 구현하는 추가 사항을 보증합니다. 2.0 릴리스를 사용하면 UPM은 다음 센서 인터페이스를 소개합니다.
iAcceleration, iAngle, iButton, iClock, iCollision, iDistance,
iDistanceInterrupter, iEC, iElectromagnet, iEmg, iGas, iGps, iGyroscope,
iHallEffect, iHeartRate, iHumidity, iLight, iLineFinder, iMagnetometer,
iMoisture, iMotion, iOrp, iPH, iPressure, iProximity, iTemperature, iVDiv,
iWater.
개발자 커뮤니티는 액추에이터 유형에 대한 새로운 인터페이스를 제안하도록 초대되었습니다.
UPM 프로젝트는 Eclipse IoT 프로젝트로 Eclipse Foundation에 가입하고 있습니다. 이에 대한 자세한 내용은 여기를 참조하십시오.
센서/액추에이터는 그와 같이 작동 할 것으로 예상됩니다 (여기 MMA7660 가속도계 API) :
// Instantiate an MMA7660 on I2C bus 0
upm::MMA7660 *accel = new upm::MMA7660(MMA7660_DEFAULT_I2C_BUS,
MMA7660_DEFAULT_I2C_ADDR);
// place device in standby mode so we can write registers
accel-> setModeStandby ();
// enable 64 samples per second
accel-> setSampleRate (MMA7660_AUTOSLEEP_64);
// place device into active mode
accel-> setModeActive ();
while (shouldRun)
{
float ax, ay, az;
accel-> getAcceleration (&ax, &ay, &az);
cout << " Acceleration: x = " << ax
<< " g y = " << ay
<< " g z = " << az
<< " g " << endl;
usleep ( 500000 );
}모든 예의 목록을 찾아보십시오.
스타터 및 특수 키트 용 다중 센서 샘플은 IoT-Devkit-Samples 저장소에서 찾을 수 있습니다.
API 문서에서 지원되는 센서 목록.
UPM 프로젝트에는 오늘날 사용중인 여러 산업 등급 센서, 액추에이터, 라디오, 프로토콜 및 표준에 대한 지원이 포함되어 있습니다. 또한 재단 파트너의 도움을 통해 Eclipse IDE와 고도로 통합되어 있습니다. 도구에 대해 자세히 알아보십시오.
이 페이지에서 다양한 OS'E에 UPM을 설치하는 방법에 대한 메모를 찾으십시오.
여기에서 건축 문서를 참조하십시오.
개발을 시작하기 전에 이름 지정 규칙을 살펴보십시오. 새로 추가 된 센서를 위해 선택한 이름은 UPM 라이브러리에서 고유해야합니다.
다음으로 프로젝트 기여 가이드를 검토하십시오.
제출 된 모든 새 코드 파일에 저자로 자신을 추가하십시오. 중대한 변화로 수정을 제공하는 경우 기여자로 자신을 추가하십시오. Commits에 서명하고 ECA를 수락하는 것은이 프로젝트에 새로운 기여를하는 데 필수적입니다.
코드를 문서화하는 것도 작업의 큰 부분입니다. 센서와 기능을 분류하는 데 사용되는 엄격한 태그 세트가 있습니다. 센서 API 문서화 섹션에서 이에 대한 자세한 내용을 확인할 수 있습니다.
마지막으로, 도서관의 나머지 부분 및 일반적으로 인텔-오티 오 데키 리 저장소와 일관성을 유지하려면 광범위한 저자 가이드를 살펴보십시오.




우리가 최선을 다하지 않더라도, 가끔씩 우리는 거꾸로 호환성을 깨뜨리는 방식으로 API를 수정해야합니다. 라이브러리 업데이트 전에 잘 작동하는 코드를 컴파일 할 수없는 경우 API 변경 섹션을 먼저 확인하십시오.
여기 버전 변경.
알려진 한계 목록은 여기에 있습니다.