استخدام الجوال مع البلوتوث للتحكم بمحرك

المشروع الخامس

عن المشروع

في هذا المشروع سنستخدم برنامج RemoteXY للتحكم بالسيرفو من خلال الجوال

ستحتاج إلى تحميل التطبيق على هاتفك: للأندرويد Android  - للأيفون IOS

فيديو المشروع

رابط تحميل مكتبة RemoteXY:

 https://remotexy.com/en/library/

تحتاج لتحميلها واتباع الخطوات الموضحة بالمقطع أعلاه

خريطة الربط





تم الإنشاء بواسطة

fritzing.org

الشيفرة البرمجية

/*

   -- New project --

   

   This source code of graphical user interface 

   has been generated automatically by RemoteXY editor.

   To compile this code using RemoteXY library 2.4.3 or later version 

   download by link http://remotexy.com/en/library/

   To connect using RemoteXY mobile app by link http://remotexy.com/en/download/                   

     - for ANDROID 4.5.1 or later version;

     - for iOS 1.4.1 or later version;

    

   This source code is free software; you can redistribute it and/or

   modify it under the terms of the GNU Lesser General Public

   License as published by the Free Software Foundation; either

   version 2.1 of the License, or (at your option) any later version.    

*/


//////////////////////////////////////////////

//        RemoteXY include library          //

//////////////////////////////////////////////


// RemoteXY select connection mode and include library 

#define REMOTEXY_MODE__SOFTSERIAL

#include <SoftwareSerial.h>


#include <RemoteXY.h>

#include <Servo.h>

Servo servo;  



// RemoteXY connection settings 

#define REMOTEXY_SERIAL_RX 3

#define REMOTEXY_SERIAL_TX 2

#define REMOTEXY_SERIAL_SPEED 9600



// RemoteXY configurate  

#pragma pack(push, 1)

uint8_t RemoteXY_CONF[] =

  { 255,1,0,0,0,11,0,10,13,0,

  4,128,23,23,57,19,2,26 };

  

// this structure defines all the variables and events of your control interface 

struct {


    // input variables

  int8_t slider_1; // =0..100 slider position 


    // other variable

  uint8_t connect_flag;  // =1 if wire connected, else =0 


} RemoteXY;

#pragma pack(pop)


/////////////////////////////////////////////

//           END RemoteXY include          //

/////////////////////////////////////////////




void setup() 

{

  RemoteXY_Init (); 

  servo.attach(8); 

 

  Serial.begin(9600);

  // TODO you setup code

  

}


void loop() 

  RemoteXY_Handler ();

 int x = RemoteXY.slider_1*180/100;

  servo.write(x);

delay(10);

  Serial.println(RemoteXY.slider_1);

  // TODO you loop code

  // use the RemoteXY structure for data transfer

  // do not call delay() 



}