Project in progress
Real-time positioning using 1sheeld and 3Ds MAX (NO GPS !)

Real-time positioning using 1sheeld and 3Ds MAX (NO GPS !) © Apache-2.0

making precise positioning device without GPS or satellites by using Arduino, 1sheeld, Android phone, USP joystick and 3Ds MAX so

  • 3,019 views
  • 1 comment
  • 16 respects

Components and supplies

Screen shot 2019 03 20 at 2 38 27 pm fqndazqcx1
1Sheeld
×1
A000066 iso both
Arduino UNO & Genuino UNO
×1
joystick (USP)
×1
PC (computer with 3Ds MAX installed)
×1
Android smart phone
×1
NPN transistor
×4

Necessary tools and machines

09507 01
Soldering iron (generic)

About this project

Project of making precise positioning device without GPS or satellites

by using Arduino, 1sheeld, Android phone, USP joystick and 3Ds MAX software .
(GPS error=10 meters but our system is promising to centimeters or millimeters error )
the movement of smart phone will be calculated from accelerometer sensor in phone and transmit to arduino via blue tooth 1sheeld (great shield from Amr Salih ... thanks Amr) and arduino controls the X, Y data of 3D object in 3Ds MAX software by hacked USP joystick (3Ds MAX can use the joystick in puts as animation controller for 3D objects).
this video is our contribution in





Code

Arduino code for accelerometer and X , Y directionsC/C++
Code for reading the accelerometer X , Y readings and control +X,-X,+Y,-Y axis of joystick by 4 output pins
#define CUSTOM_SETTINGS
#define INCLUDE_ACCELEROMETER_SENSOR_SHIELD

/* Include 1Sheeld library. */
#include <OneSheeld.h>

/* Variables for the accelerometer's values in 3 dimensions. */
float x, y, z;
int A = 10;
int B = 11;
int C= 12;
int D = 13;
void setup() {
 /* Start communication. */
  OneSheeld.begin();
   pinMode(A, OUTPUT);
  pinMode(B, OUTPUT);
  pinMode(C, OUTPUT);
  pinMode(D, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  /* Always get the values of the accelerometer in the 3 dimensions (X, Y and Z). */
  x=AccelerometerSensor.getX();
  y=AccelerometerSensor.getY();
   if(x > 0.5)
  {
    digitalWrite(A,HIGH);
    digitalWrite(C,LOW);
  }
    delay(1);
 if(x < -0.5)
{
    digitalWrite(C,HIGH);
    digitalWrite(A,LOW);
  }
delay(1);
   if(y > 0.5)
  {
    digitalWrite(B,HIGH);
    digitalWrite(D,LOW);
  }
    delay(1);
      if(y <-0.5)
  {
    digitalWrite(D,HIGH);
    digitalWrite(B,LOW);
  }
delay(1);
if (-0.5<x>0.5)
{
    digitalWrite(A,LOW);
    digitalWrite(C,LOW);
}
if (-0.5<y>0.5)
{
    digitalWrite(D,LOW);
    digitalWrite(B,LOW);
}
}

Schematics

1SHEELD-diagram.png
1sheeld diagram

Comments

Similar projects you might like

Bluetooth Steering wheel for a robot using 1Sheeld

Project tutorial by Kristian Blåsol

  • 2,557 views
  • 1 comment
  • 13 respects

Universal Remote Control using Arduino, 1Sheeld and Android

Project tutorial by Ashraf Nabil

  • 8,843 views
  • 5 comments
  • 14 respects

Automated Photo Booth using Arduino and 1Sheeld

Project in progress by Ashraf Nabil

  • 3,459 views
  • 0 comments
  • 11 respects

Controlled Board Eraser using Arduino and 1Sheeld

Project in progress by Mahmoud Ayad

  • 7,124 views
  • 3 comments
  • 32 respects

RoboArm With 1Sheeld Gamepad

by Mohammed Magdy

  • 2,662 views
  • 0 comments
  • 9 respects

Line Follower Robot Using Arduino & 1Sheeld

Project tutorial by Ashraf Nabil

  • 2,161 views
  • 0 comments
  • 5 respects
Add projectSign up / Login