summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaoran S. Diao <0@hairydiode.xyz>2019-01-24 13:31:27 -0500
committerHaoran S. Diao <0@hairydiode.xyz>2019-01-24 13:31:27 -0500
commitba797069674d28d2ee780b41871f47dbae5b4837 (patch)
treebc7e5edefe77ece91d9286d494212fa8904602c6
parent7b34f23cde3de826b0b0f27a1496af8595c93950 (diff)
added CSC project instructions/specifications
-rw-r--r--cont/csc-new.html83
-rw-r--r--csc-new.html108
-rw-r--r--index.html15
3 files changed, 199 insertions, 7 deletions
diff --git a/cont/csc-new.html b/cont/csc-new.html
new file mode 100644
index 0000000..4cb5709
--- /dev/null
+++ b/cont/csc-new.html
@@ -0,0 +1,83 @@
+<!--
+123456789-223456789-323456789-423456789-523456789-623456789-723456789-8234567890
+一二三四-->[TITLE] [DATE]
+--------------------------------------------------------------------------------
+[SETTITLE]Control Systems Club Web Controlled Servo Instructions
+[SETDATE]1-24-2019
+
+Ok everyone, we'r going to start a web controlled servo project.
+
+What we want, is a webpage where you click "move servo" and a servo moves.
+
+It will work like this, with 4 components we have to write:
+
+The Front End
+The Backend
+The Servo Controller
+The Arduino Firmware
+
++---Digital Ocean VPS--+ +--Control Computer--+
+|HTML/CSS/JS Front End | HTTPS POST |C Servo Controller |
+|Golang Backend |====================| |
++----------------------+ +--------------------+
+ || ||
+ ||H ||U
+ ||T ||S
+ ||T ||B
+ ||P ||
+ ||S ||S
+ || ||e
+ +-Client Computer-+ ||r
+ | Some sort of | ||i
+ | Browser | ||a
+ | | ||l
+ | | ||
+ | | +----------------------+
+ +-----------------+ |C/C++ Arduino Firmware|
+ | |
+ +----------------------+
+ ||
+ ||S
+ ||e
+ ||r
+ ||v
+ ||o
+ ||
+ ||W
+ ||i
+ ||r
+ ||e
+ ||
+ +-Servo-+
+ | |
+ +-------+
+
+The Frontend will consist of html templates, as well as supporting css and js
+files, that will implement a simple UI that allows the user to click on a button
+that sends a POST request to the backend to move the servo.
+<a href="https://www.w3schools.com/html/html_forms.asp">W3 Forms Tutorial</a>
+<a href="https://www.w3schools.com/html/html_css.asp">Inline CSS Tutorial</a>
+<a href="https://www.w3schools.com/cssref/pr_class_display.asp">CSS Display Property Tutorial</a>
+
+The Backend will be a Golang executable that will be listening for HTTPS
+connections, and serves the frontend, as well as listen for POST requests from
+both the Frontend and the Control Computer. A POST request from the frontend
+updates the desired state of the servo, and a POST request from the Control
+Computer will update the actual state. Both the Actual state and the desired
+state should also be served as well.
+<a href="https://golang.org/doc/articles/wiki/">Go net/http and html/template Libraries Tutorial</a>
+
+The Servo Controller will poll the Backend for the desired state, communicate
+this to the Arduinoi via the RS-232 Library, and return this desired state via
+POST to the backend so as to update the actual state.
+<a href="https://www.teuniz.net/RS-232/">RS-232 Library</a>
+<a href="https://hairydiode.xyz/cgit/ROBOARM.git/tree/RS232/">RS-232 Example</a>
+<a href="https://curl.haxx.se/libcurl/c/">cURL API</a>
+<a href-"https://curl.haxx.se/libcurl/c/example.html">cURL Code Examples</a>
+
+The Arduino Firmware will commands over the USB Serial Wire, and output that to
+the servo.
+<a href="https://www.arduino.cc/en/tutorial/SoftwareSerialExample">Arduino Serial Tutorial</a>
+<a href="https://www.arduino.cc/en/Tutorial/Knob">Arduino Servo Tutorial</a>
+
+
diff --git a/csc-new.html b/csc-new.html
new file mode 100644
index 0000000..3b1835d
--- /dev/null
+++ b/csc-new.html
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<head>
+<title>Control Systems Club Web Controlled Servo Instructions</title>
+<meta charset="utf-8"/>
+<link rel="stylesheet" href="https://hairydiode.xyz/style.css"/>
+<link rel="icon" type="image/png" href="https://hairydiode.xyz/img/fav/logo.png"/>
+</head>
+<body>
+<div class="content">
+<pre>
+<!--
+123456789-223456789-323456789-423456789-523456789-623456789-723456789-8234567890
+一二三四
+-->--------------------------------------------------------------------------------
+
+<a href="https://hairydiode.xyz">>HairyDiode</a>
+
+--------------------------------------------------------------------------------
+<!--
+123456789-223456789-323456789-423456789-523456789-623456789-723456789-8234567890
+一二三四-->Control Systems Club Web Controlled Servo Instructions 1-24-2019
+--------------------------------------------------------------------------------
+
+Ok everyone, we'r going to start a web controlled servo project.
+
+What we want, is a webpage where you click "move servo" and a servo moves.
+
+It will work like this, with 4 components we have to write:
+
+The Front End
+The Backend
+The Servo Controller
+The Arduino Firmware
+
++---Digital Ocean VPS--+ +--Control Computer--+
+|HTML/CSS/JS Front End | HTTPS POST |C Servo Controller |
+|Golang Backend |====================| |
++----------------------+ +--------------------+
+ || ||
+ ||H ||U
+ ||T ||S
+ ||T ||B
+ ||P ||
+ ||S ||S
+ || ||e
+ +-Client Computer-+ ||r
+ | Some sort of | ||i
+ | Browser | ||a
+ | | ||l
+ | | ||
+ | | +----------------------+
+ +-----------------+ |C/C++ Arduino Firmware|
+ | |
+ +----------------------+
+ ||
+ ||S
+ ||e
+ ||r
+ ||v
+ ||o
+ ||
+ ||W
+ ||i
+ ||r
+ ||e
+ ||
+ +-Servo-+
+ | |
+ +-------+
+
+The Frontend will consist of html templates, as well as supporting css and js
+files, that will implement a simple UI that allows the user to click on a button
+that sends a POST request to the backend to move the servo.
+<a href="https://www.w3schools.com/html/html_forms.asp">W3 Forms Tutorial</a>
+<a href="https://www.w3schools.com/html/html_css.asp">Inline CSS Tutorial</a>
+<a href="https://www.w3schools.com/cssref/pr_class_display.asp">CSS Display Property Tutorial</a>
+
+The Backend will be a Golang executable that will be listening for HTTPS
+connections, and serves the frontend, as well as listen for POST requests from
+both the Frontend and the Control Computer. A POST request from the frontend
+updates the desired state of the servo, and a POST request from the Control
+Computer will update the actual state. Both the Actual state and the desired
+state should also be served as well.
+<a href="https://golang.org/doc/articles/wiki/">Go net/http and html/template Libraries Tutorial</a>
+
+The Servo Controller will poll the Backend for the desired state, communicate
+this to the Arduinoi via the RS-232 Library, and return this desired state via
+POST to the backend so as to update the actual state.
+<a href="https://www.teuniz.net/RS-232/">RS-232 Library</a>
+<a href="https://hairydiode.xyz/cgit/ROBOARM.git/tree/RS232/">RS-232 Example</a>
+<a href="https://curl.haxx.se/libcurl/c/">cURL API</a>
+<a href-"https://curl.haxx.se/libcurl/c/example.html">cURL Code Examples</a>
+
+The Arduino Firmware will commands over the USB Serial Wire, and output that to
+the servo.
+<a href="https://www.arduino.cc/en/tutorial/SoftwareSerialExample">Arduino Serial Tutorial</a>
+<a href="https://www.arduino.cc/en/Tutorial/Knob">Arduino Servo Tutorial</a>
+
+
+</pre>
+</div>
+<br>
+<br>
+</body>
+<!--
+if you're digging in the src you might be interested in how this site works
+here: https://hairydiode.xyz/meta2
+-->
diff --git a/index.html b/index.html
index 179589d..6874f61 100644
--- a/index.html
+++ b/index.html
@@ -44,16 +44,17 @@ Where's all the other stuff you host from this domain?
<a href="https://social.hairydiode.xyz">My Mastodon Instance</a>
Where's all the content?
Scroll Down
-<a href="https://hairydiode.xyz/doodle">[Some Doodles] 2-27-2018</a>
-<a href="https://hairydiode.xyz/meta2">[Moving This Site] 6-26-2018</a>
+<a href="https://hairydiode.xyz/csc-new">[Control Systems Club Web Controlled Servo Instructions] 1-24-2019</a>
+<a href="https://hairydiode.xyz/iokalant">[𘤝𘤞𘤀𘤛・𘤌𘤛𘤧𘤁・𘤊𘤡・𘤈𘤝-Iokalant Writing System-优卡文字系] 1-26-2018</a>
<a href="https://hairydiode.xyz/key">[PGP Public Key] 6-26-2018</a>
-<a href="https://hairydiode.xyz/omnicom">[Omnicom Writeup] 1-12-2018</a>
+<a href="https://hairydiode.xyz/meta2">[Moving This Site] 6-26-2018</a>
+<a href="https://hairydiode.xyz/meta">[Making This Site] 11-13-2017</a>
<a href="https://hairydiode.xyz/network">[A Distributed Network Idea] 1-3-2018</a>
-<a href="https://hairydiode.xyz/iokalant">[𘤝𘤞𘤀𘤛・𘤌𘤛𘤧𘤁・𘤊𘤡・𘤈𘤝-Iokalant Writing System-优卡文字系] 1-26-2018</a>
-<a href="https://hairydiode.xyz/earbud">[Earbud Holders] 3-7-2018</a>
-<a href="https://hairydiode.xyz/csc">[Control Systems Club] 2-21-2018</a>
+<a href="https://hairydiode.xyz/omnicom">[Omnicom Writeup] 1-12-2018</a>
<a href="https://hairydiode.xyz/orion">[Leaving ORION] 2-9-2018</a>
-<a href="https://hairydiode.xyz/meta">[Making This Site] 11-13-2017</a>
+<a href="https://hairydiode.xyz/csc">[Control Systems Club] 2-21-2018</a>
+<a href="https://hairydiode.xyz/doodle">[Some Doodles] 2-27-2018</a>
+<a href="https://hairydiode.xyz/earbud">[Earbud Holders] 3-7-2018</a>
</pre>
</div>
<br>