ما هو ال Code لاتحكم بسيارة صغيرة من خلال هاتفي؟

3 إجابات
profile/تسنيم-بشارات
تسنيم بشارات
مهندسة أنظمة حاسوب
.
٢٧ سبتمبر ٢٠١٩
قبل ٥ سنوات
تحتاج إلى كود من أجل تصميم تطبيق خاص عل هاتفك لتتمكن من التحكم بالسيارة التي لديك ، و تحتاج أيضاً لتحديد القطعة المستخدمة على السيارة و هذا ما سيحدد ما هو الكود الخاص بهذه القطعة و يجب عليك أن تجلب قطعة بلوتوث خاصة لربطها مع تطبيق الهاتف لديك ، ليتم الاتصال بين القطعة و الهاتف الذي تملكه (التطبيق)، فلكل قطعة إلكترونية برنامج خاص لبرمجتها ، و هناك العديد من القطع الإلكترونية الخاصة بهذا الموضوع و هي الأردوينو أونو و الأردوينو ميجا و ال Ev3 من شركة ليجو .

profile/منار-عنبتاوي
منار عنبتاوي
مهندسة أنظمة حاسوب
.
٢١ سبتمبر ٢٠١٩
قبل ٥ سنوات
في الحقيقة ، يجب عليك أن توضح القطعة التي قمت باستخدامها لهذه السيارة ، هل استخدمت قطعة الأردوينو أونو أم نوع آخر من الأردوينو أم أنك استخدمت قطعة ال Ev3  أم أنك استخدمت قطع أخرى للتحكم بهذه السيارة ، فكل هذا يعتمد على أي البرامج ستستخدم للتحكم بالسيارة ، و لكي تتحكم بها من خلال الهاتف يجب عليك جلب قطعة bluetooth slave و من ثم برمجة تطبيق على هاتفك للتحكم بالسيارة من خلال هذا التطبيق و ربط الهاتف بالسيارة من خلال البلوتوث. 

profile/علا-محمود-1
علا محمود
باحثة في الفيزياء
.
١٢ سبتمبر ٢٠١٩
قبل ٥ سنوات
يمكن التحكم بسيارة وحركتها سواء سرعتها او اتجاه حركتها من خلال وصل المحركات لها مع ال H-Bridge ثم وصلها مع الاردوينو وانزال تطبيق Bluetooth Cars على الهاتف
ثم وضع هذا ال Code داخل الاردوينو ,, هو طويل ولكن مهم جدا تطبيقه جيدا
 int N1=5;
int N2=4;
int N3=2;
int N4=3;
int ENA=9;
int ENB=10;

void setup() {
pinMode (5,OUTPUT);
pinMode (4,OUTPUT);
pinMode (2,OUTPUT);
pinMode (3,OUTPUT);
pinMode (9,OUTPUT);
pinMode (10,OUTPUT);
Serial.begin(9600);

}

void forward() {
digitalWrite(5,1);
digitalWrite(4,0);
digitalWrite(2,1);
digitalWrite(3,0);
analogWrite(9,100);
analogWrite(10,100);
}

void left() {
digitalWrite(5,1);
digitalWrite(4,0);
digitalWrite(2,1);
digitalWrite(3,0);
analogWrite(9,100);
analogWrite(10,20);}

void right() {
digitalWrite(5,1);
digitalWrite(4,0);
digitalWrite(2,1);
digitalWrite(3,0);
analogWrite(9,20);
analogWrite(10,100);}

void reverse() {
digitalWrite(5,0);
digitalWrite(4,1);
digitalWrite(2,0);
digitalWrite(3,1);
analogWrite(9,100);
analogWrite(10,100);}
void Stop() {
digitalWrite(5,0);
digitalWrite(4,0);
digitalWrite(2,0);
digitalWrite(3,0);
analogWrite(9,0);
analogWrite(10,0);}

void loop() {
if (Serial.available()){ 
  char x =Serial.read();
  if (x=='F')
  forward();
if (x=='L')
left ();
if (x=='R')
right();
if (x=='S')
Stop();

}}
: