Sixteenth Assignment:

Contents:

  1. Design of my own PCB
  2. Labview application
  3. Processing application
  4. Python aplication
  5. Selft evaluation
  6. File download

Requirement:

  1. Processing software.
  2. Electronics components.

For this assignment I have to write an application that interfaces with an input &/or output device that I made,

Design of my own PCB

For this assignment I decided to make my own card, to take temperature signals with an LM35, and then acquire the data through serial communication

Schematic and board of my design:



Manufacture of the card in the Modela milling machine




Soldering the card board


Testing the card board


Load the program into the PCB
For this I Reuse the Temp program made in Input Devices




To test the serial comunication I used the program made in Input Device



Labview Application

I used Labview as interface, and communicate it with my board, through serial communication

LabVIEW is systems engineering software for applications that require test, measurement, and control with rapid access to hardware and data insights


The labview consists of two windows the front panel and the block diagram


For serial communication with the card that we designed, we will use the VISA (Virtual Instrument Software Architecture) library located in the block diagram.


Labview has some examples with serial communication, and I like this software because is so easy to program.

Processing application

Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. It is based on open course.

Read More: https://processing.org/
This software could work with hardware (Arduino) y/o software (application), it Is possible because use java as programming language. In this case I use ControlP5 processing library, it was written by Andreas Schlegel. A available controller include Slider, Button, Toggle, Knob, Textfield, RadioButton, Checkbox. Slider is necessary to use a range of values, In this case I develop the following code:

Processing software a free software, you can download it on next link:

https://processing.org/download/


Programming on Processing and IDE Arduino is very similar because both using java lenguaje to program

For my application is necessary to download a library, ControlP5. It contain codes that are necessary to generate motion. Remenber that library have to be same that Processing software, in my case I downloaded Processing 2.2.1 and library controlP5_2.1.5

Library and variable

Such as Arduino IDE, I recommended to put library and variables on header program because on this way is more easy to understand the program


You can download that library on next link:

https://code.google.com/archive/p/controlp5/downloads?page=1

Initial Setup

Such as Arduino IDE, on Void setup are initially values


Draw Windows

This is one of advantage that have processing than Arduino IDE, on the first software is possible to draw something, could be using geometry rules, while with Arduino IDE I will be impossible.


See More commands on next link::

https://processing.org/reference/

My program and interface applications look like next pictures




Python aplication

For the machine design assignment, I develop a User interface used the GUI wxFormBuilder v3.1.70 on Python.



Comparation

- LabVIEW is a powerful program, very good and easy to use but has a high cost.
- Processing is a very good platform to program and was created for the development of Grafical User Interfave and is free.
- Pythom is a very simple and easy to use language and has enough tools for your GUI like wxFormbuilder

Self Evaluation

  1. What worked:
    • I made my own PCB with a LM35
    • I tested three softwares for interfaces

  2. What did not work:
    • I had problems with processing because I couldn't find clear examples for my application
    • I could not connect the card of my step motor with the processing, because I needed more time to research.

  3. Things to improve:
    • I would like to test other software like Java
    • I would like to test my processing aplicatión with my step motor controler

File download