Tasks of this week:

The weekly assignment started with the simple tasks:
1. Group assignment:
compare as many tool options as possible
2. Indivisual:
Developing an Interface for hello board

1.Group assignment:

compare as many tool options as possible.

For this we had taken a few referances out of ones we used and few general, those included ones few that we used and few that were new to us.
Which were listed as here:
1.MIT app inventor
2.Processing
3.Matlab
Following hence briefed are the advantages, experiences, and issues faced about these tools.

1. Processing:
This was one of the most common tool that all of us had begined with, this is actually a good tool, the functions that we had understood, about what the tool was actually capable of were, it can recieve data from the defined serial port as the arduino ide does and then we are able to define the actions that could be taken over the data. That includes making forms, graphs or plotting diagrams.
Basically it puts the data in the from of tangible and intangible outputs, this is advantageous for non programmers to learn the basics of programming.
The advantage is that the language and the programming interface is quite similar to the arduino, hence if you are familier with the strata of the arduino, then the use of this programming environment does not seem that difficult.

2. MIT app Inventor:
This is basically an app development environment, where the application is designed for a certain operating system, in our case android.Our experience with the app invetor was pretty easy, here we had been with developing application interfaces for output and input devices, to either control them or get readings for them.

Following were our experiences with MIT app inventor:
1. This app basically has a very basic interface of programming where we literally join jigsaws to make logical deductions.
2. The inventor has supports for live testing of the app.
3. The final development of the app is just a click, as compared to parallel softwares (unity, etc)
4. However there is actually certain basic skill set required in order to understand all the peripherals of the inventor.
5. There are lot of components (clock, listpicker, etc) that actually baffle the untrained person.
6. Also there has to be a perfect set of logics pre defined and known in order to test that out, since it's actually difficult to locate.
7. Considering these we can say that its a pretty good platform for development but needs quite of initial efforts.

3.MATLAB:
I had only heard about matlab in college, but never used it before. In my initial impressions I liked it.The way matlab controls your PCB is very different.
Pros
Commercial software (bad), but almost all schools and universities have it. The largest community support Compatible with Octave (Opensource equivalent)

2.Indivisual assignment:

What is Interfacing?
Interfacing includes the way for the user to operate the machine and to know vital parameters of the process. Now a days in the world of smart phones applications are becoming the key for everything. Applications are very handy in use and one can easily download the app.

Note: For this assignmnet I have used one of my friend's (Rutvij) laptop. as I faced some problem with my laptop.

For this task I tried and saw how can we read and get the data from the serial port, for which I worked with my hello board and the Ultrasonic sensor which I used in the Input Devices week.



For this assignmet I went with the processing language, the language was a new for me to learn.

The basic task was to understand the basics of processing language and it's structure, in order to work through it. Considering all that I needed here listed are my conclusions with understanding the language and the codes that I needed.
The basic it need two sketches.
1.To be burnt on the controller board for initiating the communication.



2.To be made in the sketch pad of processing that would read the inputs from the serial port.



The syntax of the processing was quite similar to the Arduino Ide
1. The Arduino IDE has a basic structure of "void setup and void loop"
2. Where as the processig has a basic structure of "void setup and void draw"



This is the main functions of the basic available sketch.



1. Serial communication commands, these commands are used to directly communicate with the data comming through the serial port.
2. all basic functions of 'if and else' loops are to add conditions
3. And the conditions sepcified in the panel of void draw used to draw the graph, basically the GUI

For preocessing I pland about a progaram that would be universal for each and every input fed through the serial port and would generate a graph like format.

this is the first draft of the serial communication.



then the part comes of graph designing.

this is the condition of if and else helps in development of the incremental graph.



the last step remaining was burn code to the board to communicate with the serial port.
In this entire process the function of the sketch on arduino was to just communicate the data to the serial ports. I changed the data in inches, to be printed only with numeric characters and no dimensions. This is the code.

For seafty I updated the code without ultrasonic sensor.



Then I connected the sensor and burned the code again. and evrything sarted working fine.



Here is the video of my interfacing assignment.


Learning Outcomes:

In this week, I learnt about what interfacing is and how it works. I made the interfacing.
You can Download the Files.