
이 프로젝트는 Bluetooth HC-08 인터페이스를 통해 맞춤형 자체 밸런싱 로봇을 제어하기 위해 모바일 애플리케이션을 구축 한 프로젝트입니다. 이 프로젝트는 Arduino 마이크로 컨트롤러에 명령을 보내 도와 같은 작업을 수행 할 수 있습니다.
선택된 프레임 워크는 이온 성 프레임 워크였습니다. 이것은 JavaScript, HTML 및 CSS를 사용하여 Android 및 iOS 모바일 앱을 빌드하는 강력한 도구입니다. 그러나이 특정에 대해 나는 TypeScript 템플릿이있는 JavaScript 라이브러리로 ReactJ를 선택했습니다. 주 경영진을 위해 React 플러그를 사용한 Redux가 선택되었습니다.

////////////////////////// INTERFACES ////////////////////////
export interface IRobotState {
linearVelocity : number ;
angularVelocity : number ;
incliAngle : number ;
posX : number ;
posY : number ;
robotOrien : number ;
battery ?: number ;
startSampling ?: boolean ;
sampleTime ?: number ;
persistData ?: boolean ;
records ?: Array < {
linearVelocity : number ;
angularVelocity : number ;
incliAngle : number ;
posX : number ;
posY : number ;
robotOrien : number ;
battery : number ;
} > ;
}
/////////////////////////////////////////////////////////////////
////////////////////////TYPES////////////////////////////////
export const SET_ROBOT_DYNAMIC_STATE = 'SET_ROBOT_DYNAMIC_STATE' ;
export const RESET_ROBOT_DYNAMIC_STATE = 'RESET_ROBOT_DYNAMIC_STATE' ;
export const PERSIST_ROBOT_DYNAMIC_STATE = 'PERSIST_ROBOT_DYNAMIC_STATE' ;
///////////////////////////////////////////////////////////
const initialState : IRobotState = {
linearVelocity : 0.0 ,
angularVelocity : 0.0 ,
incliAngle : 0.0 ,
posX : 0 ,
posY : 0 ,
robotOrien : 0.0 ,
battery : 50 ,
startSampling : false ,
sampleTime : 150 ,
persistData : false ,
records : [ ] ,
} ; 
이 앱은 다른 UI를 렌더링하기위한 탭과 여러 구성 요소로 구성됩니다.

이 프로젝트를 협력하거나 간단히 사용하려면 Android 환경이 준비되어 있어야합니다.
[https://developer.android.com/studio]
Linux 사용자 인 경우이를 실행하거나 적절한 쉘 특정 구성 파일에 추가하십시오. 예 : bash_profile, bashrc 등
export ANDROID_SDK_ROOT= $HOME /Library/Android/sdk
export PATH= $PATH : $ANDROID_SDK_ROOT /emulator
export PATH= $PATH : $ANDROID_SDK_ROOT /platform-tools[https://nodejs.org/en/]
[https://ionicframework.com/docs/intro/cli]
Repo가 다운로드되면 다음 명령을 실행하십시오.
npm installionic serve이것은 웹 브라우저에서 프로젝트를 실행하지만 기본 Pluggins는 작동하지 않습니다.
ionic cap add androidiOS 프로젝트를 생성합니다
ionic cap add iosAndroid 폴더에서 Android Studio를 열고 시뮬레이터에서 앱을 실행하십시오.
라이브 기능 및 시뮬레이터에 장착 된 응용 프로그램에서 직접 작업하려면 이것을 실행하십시오.
npm run dev[https://github.com/josealejandro2928/self-balancing-arduino-robot-controller]
프로젝트의 루트에는 앱 ".apk"의 데모가 있습니다.
SB_Controller.apk