From 1981a632b7ee30b5c2de24ec60fee630a7203353 Mon Sep 17 00:00:00 2001
From: cs161079
Date: Fri, 17 Jan 2020 13:08:54 +0200
Subject: [PATCH] Autonomus Car Gateway
---
autonomousCar/autonomousCar.ino | 6 ++---
autonomousCarGateway/carClient.py | 38 +++++++++++++++++++++++++++++++
project.adoc | 4 ++--
project.html | 6 ++---
webInterface/parking.html | 4 +++-
5 files changed, 49 insertions(+), 9 deletions(-)
create mode 100644 autonomousCarGateway/carClient.py
diff --git a/autonomousCar/autonomousCar.ino b/autonomousCar/autonomousCar.ino
index 25c2b25..23de2eb 100644
--- a/autonomousCar/autonomousCar.ino
+++ b/autonomousCar/autonomousCar.ino
@@ -52,7 +52,7 @@
#define SERVOPIN 6
/*Definition for turn time*/
-#define TURN_TIME 500
+#define TURN_TIME 800
/*
* -------------------------------------------------------
@@ -259,7 +259,7 @@ void park() {
turnRight(255);
forward();
delay(TURN_TIME);
-
+ absolute(255);
motor_stop();
forward();
@@ -296,7 +296,7 @@ void loop() {
//Serial.println(distance);
// Read serial input:
Serial_Input();
- //park();
+ park();
//delay(1000);
// if (distance <15) {
// // Change direction to motors
diff --git a/autonomousCarGateway/carClient.py b/autonomousCarGateway/carClient.py
new file mode 100644
index 0000000..2147afc
--- /dev/null
+++ b/autonomousCarGateway/carClient.py
@@ -0,0 +1,38 @@
+#Authors: Oulis Evangelos, Oulis Nikolaos, Drosos Katsibras
+#===================================================================
+#!/usr/bin/env python
+
+import json
+import requests
+
+
+server_ip = "iot-smart-parking.herokuapp.com"
+server_port = "443"
+API_ENDPOINT = 'https://' + server_ip + ':' + server_port + '/'
+
+try:
+ ser = serial.Serial(
+ port='/dev/ttyACM0',
+ baudrate = 9600,
+ parity=serial.PARITY_NONE,
+ stopbits=serial.STOPBITS_ONE,
+ bytesize=serial.EIGHTBITS,
+ timeout=1
+ )
+
+ c = requests.get(url=API_ENDPOINT, params = {})
+ doc = c.json()
+
+ parking = None
+ for park in doc:
+ if doc[str(park)] == 1:
+ parking = park
+ break
+
+ print ("Free parking is Number: " + parking)
+ ser.write("b'" + parking + "'")
+ ser.flush()
+except (NameError, TypeError) as e:
+ print ("No free parking")
+except requests.exceptions.ConnectionError:
+ print("No Internet access")
diff --git a/project.adoc b/project.adoc
index 8ca0426..fe2fe8e 100644
--- a/project.adoc
+++ b/project.adoc
@@ -193,8 +193,8 @@ image::Photos/itops-pizza_as_a_service.png[1000,800]
* 1 x Raspberry Pi
==== Υλοποίηση και Προγραμματισμός
-Ο motor driver, το Servo motor καθώς και ο Ultrasonic αισθητήρας κουμπώνουν στον μικροελεγκτή Arduino Uno που χρησιμοποιούμε,
-τον οποίο τον εγκαθηστούμε πάνω στο καλούπι του οχήματος το οποίο έχει εγκατεστημένα 4 τροχούς. Οι τροχοί οδηοούνται από 4 moters
+Ο motor driver, το Servo motor καθώς και ο Ultrasonic αισθητήρας συνδέονται στον μικροελεγκτή Arduino Uno που χρησιμοποιούμε,
+τον οποίο τον εγκαθηστούμε πάνω στο καλούπι του οχήματος το οποίο έχει εγκατεστημένα 4 τροχούς. Οι τροχοί οδηγούνται από 4 moters
τα οποία τροφοδοτούνται από τον motor driver.
Η συνδεσμολογία έχει την διάταξη που παρουσιάζεται παρακάτω:
diff --git a/project.html b/project.html
index c23fcc3..699247a 100644
--- a/project.html
+++ b/project.html
@@ -780,8 +780,8 @@ REST API έτσι ώστε να μπορούν να επικοινωνούν ε
4.1.2. Υλοποίηση και Προγραμματισμός
-
Ο motor driver, το Servo motor καθώς και ο Ultrasonic αισθητήρας κουμπώνουν στον μικροελεγκτή Arduino Uno που χρησιμοποιούμε,
-τον οποίο τον εγκαθηστούμε πάνω στο καλούπι του οχήματος το οποίο έχει εγκατεστημένα 4 τροχούς. Οι τροχοί οδηοούνται από 4 moters
+
Ο motor driver, το Servo motor καθώς και ο Ultrasonic αισθητήρας συνδέονται στον μικροελεγκτή Arduino Uno που χρησιμοποιούμε,
+τον οποίο τον εγκαθηστούμε πάνω στο καλούπι του οχήματος το οποίο έχει εγκατεστημένα 4 τροχούς. Οι τροχοί οδηγούνται από 4 moters
τα οποία τροφοδοτούνται από τον motor driver.