Sunday, 29 November 2015

DIY Electric Heat Treat Oven and Aluminum Foundry

Preface

My newest need for a tool has arouse from the need to heat treat some knives that I plan on making. I already own torches and have heat treated a few things in that matter in past, but the knives that I would like to make are out of S30V Stainless steel. This steel needs proper heat treatment so I thought that I would make an oven to do so. I have also been doing some outdoor aluminum casting, it is now getting cold here in Canada so I would like to move inside. My current foundry weighs a ton and is oil fired. This means is it not possible to bring it inside. What to do? Why not build the foundry into the heat treat oven. I don't know why more people have not thought of this! But how to do this considering the heat treat needs to be front loading and the foundry top loading. Rotate it, Thats it! Now for a Plan!!

My Design

The Oven

Since this Oven/Foundry will be inside and I want to hold precision temperatures, I have opted to make it PID controlled. I also need to be able to have it top loading(foundry) and front loading(heat treat). The internal dimensions are then determined by the length of knife I want to make(12") and the size of the crucible I plan on using (8-1/2"Tall, 6-7/8" Dia).  The internal dimensions would then be a minimum 13" tall x 8" Dia. I found a local supplier of Grooved K23 Firebrick which measured 2.5"x 4.5"x 9". I figured then if I stacked one fire brick lengthwise on top another third of a fire brick and then the same side by side I could make a wall the would measure 12" Tall x 9" Wide (without corners). I would make the corners by 2.5"x2.5" squares that were 12" tall (total) out of regular firebrick. (see diagrams below). I then added 1" thick by 2" wide firebrick to the bottom and to the top of the walls, in order so that the kenthal wire has some room to go from one groove to the next.

Top View Of Walls
View Of  Front or Back Wall
View Of Side Walls (Front and Back walls not shown here)


This design now needs a floor and a door, which both are of the same design (see diagram below)

Diagram to come soon

With the fire brick out of the way next to design was the metal outer case to protect the fire brick. This out case I decided would be a simple box made of angle iron covered in sheet metal. I ended up finding some scrap 1-1/4" angle iron which would work nicely. I would also build the frame for the door from this. (see diagram below)

Diagram to come soon


Electrical

With the basic mechanical oven structure design finished it was time to consider the electrical needs. I am not an electrical engineer, only a technologist, and these plans have not been certified. So if one chooses to use these plans, please proceed with caution.
I want to be able to set the temperature very precisely, so I will be using a cheap PID controller. An SSR will be used to switch on the Kenthal heating elements. The SSR can overheat, so a thermal switch will be mounted nearby for safety purposes. On the topic of safety, a door switch will also be installed, as well as a main disconnect switch and fuses. Originally I planned for 4 elements(one on each side) but that will require too much power and may get damaged when mounted on its side. In that matter I decided to go with 2 elements instead of the 4.
The PID I am using is the T series from Mypin (ebay), the kenthal elements are also from ebay and are rated at 3KW. The parts will be listed in the bill of materials (BOM) below.
I measured the resistance of one and it comes to 30ohms. This gives me a total resistance of 15ohm when installed in parallel. 240Vac/15ohm=14.7A which is 3226W total. My 240V circuit is 20A so the 14.7A will work nicely.

BOM to come soon
I may change how this works!!



Frame

The frame is the most unique part of this build as it will allow me to go from a top loading foundry into a front loading heat treat oven. The idea here is to rotate and lock the oven into position. Some angle iron should work nicely to build this.

Diagram to come soon


I will finish this blog in time as the furnace is being completed at the same time. Pictures of progress and updates will follow

Tom Sanders

Wednesday, 10 June 2015

Update on my life

So I have been very since my last post over a year ago. I have since been an employee of the Durham College Research Office which has kept me very busy when combined with my studies. I had been very sick with a horrible foot infection that has just healed in the recent months. This has kept me from preforming my normal tasks. Now healed I have been busy setting up my tiny machine/fabrication shop. Now equipped with a Grizzly 10x22 Lathe, and Craftex milling machine, I now have a decent little machine shop. These are a good addition to my fabrication equipment. Additionally I have built an outdoor used-oil burning aluminum foundry. I have also been deemed the task of organizing the wheelchair project. This has been going well with motor controls working by means of tablet control, jesture control, speech command and traditional joystick all combined with object avoidance. I have redesigned the mechanical structure to be made of lightweight aluminum and manufacturing is almost completed. I will try and update my blog more often in the future

Live LightSail™ Press Conference With Bill Nye

Sunday, 11 May 2014

Health monitoring system


This project is my contribution to a larger project called the IKRobo wheelchair research project funded by the research division at Durham College. The aim of this project is to enlighten the community about the difficulties of wheelchair use, direction of possible and probable solutions to these difficulties, and a working prototype of these solutions in place.The project is currently finishing its first phase of prototyping and is pursuing additional funding.The IKRobo has three main distinctions from the regular consumer wheelchair. 
  1. Multiple steering choices; Joystick, Eye tracking, Object avoidance, Voice command
  2. Three body positions; Sitting, Walker(standing), Bed(sleeping)
  3. Electronic bio-medical health monitoring 
More information on the IKRobo can be found here at http://ictbits.com/ikrobo/ 

My contribution has been the electronic bio-medical health monitoring system. The requirements were to sense seven different medical signals, data-log them to the internet, and notify a caregiver if any signal was not within range.

The Arduino Yun was chosen for its ease of use and integration with the eHealth sensor shield from cooking hacks. Xively.com and Plot.ly were used to view and log the data to the internet. Nexmo was used to make the phone call to the caregiver


The data that is collected comes from a variety of non-invasive bio-medical sensors including: pulse rate, blood oxygen percent, blood pressure, electrocardiogram, breathing rate, weight, and temperature. These sensors are monitored by a microcontroller that sends the data via WiFi to the cloud storage. If this data falls out of range, phone calls are automatically sent to the medical adviser or caregiver.

Monday, 21 April 2014

Updates of projects in progress.

No posts lately :( I have been very busy with college. Well Exams are almost finished! So I finally have some time to do some updating. 
I have been recently involved with a project at the college called the IKRobo. This project is a smart, self guided wheelchair for the mild to critically handicapped patient who can be remotely monitored of all medical information, and is informed if any changes occur. The area of the project I am involved in in the monitoring, logging alerting of medical information by the use of electronic medical sensors. The hardware being used is the Arduino Yun, Cooking hacks E-health kit, Bluetooth adapter, Standard bathroom scale, and custom PCB's. The data is being collected by the YUN and stored on the internet cloud via Xively.com website, ECG data is displayed in "real"time via Plot.ly website. This data can be viewed locally on a tablet with a custom app. Additionally if the patient's vital signs fell below normal, a phone call can be sent to the patient's caregiver.
I have also started a few other projects; a portable BeagleBone LapTablet, a camera slide, CNC machine, small foundry and rebuilding my reprap extruder.



Thursday, 13 March 2014

Raspberry Pi Development board

Although not as popular as the Arduino line-up, the Raspberry Pi is much more capable in other factors. The Raspberry Pi starts where the arduino left off, while the arduino is great at inputs and outputs and simple programming, the Raspberry Pi is great at internet integration. The Raspberry PI has a very low cost, that is built for youth and beginners to programming. The Raspberry Pi is a very capable device with a reliable processor
This $35 microcomputer development board was built for a purpose. That purpose is getting people interested in programming, particularly youth. The issue is that youth, teens and even college graduates all seem to think that computers can do nothing more than check e-mail, go on the internet, and write word documents. Programming has been forgotten, this is a problem. The Raspberry Pi fixes this problem by using easy to use programming software(Scratch), an easy to use programming language(Python), and very low cost.
Scratch is a simple program that uses pieces of code that can be joined together like a puzzle, this makes it easy for anyone to learn. The pieces of code are from the python programming language, which is the easyiest to learn. Python has become the easiest due to the lack of programming grammer needed. This ease of use makes programming the Raspberry Pi very fun for beginners.
The Raspberry Pi is a  small device, measuring about the size of a credit card. This small size does not hinder performance, with being able to perform any function that a PC can do. The Raspberry PI features two USB ports (for a mouse and keyboard), a Ethernet port(for internet), A micro-USB(for powering it), SD card reader(for storage), two camera inputs, a HDMI output(for new TVs), and analog output(for older TVs). The last feature is what sets it apart from a tablet or laptop, it is the GPIO pins. GPIO stands for general purpose input output, these pins are used for hooking up real world inputs and outputs such as buttons, lights and sensors.
The chip that the Raspberry Pi uses is a SOC(system on a chip) called the BCM2835. The BCM2835 is a dual-core high definition 1080p embedded multimedia applications processor. This means that is is really good in media playback, imaging, streaming media, graphics, 3D gaming, and even camcorder functions. The chip is manufactured by Broadcom, and is mostly used in various cell phones and tablets, although it is also found in cameras and camcorders. It is also very reliable and has a low cost because of its use in cell phones.
The Raspberry PI can be used for many projects that involve internet access such as; cloud based datalogging of sensor values, building your own personal server to host a webpage, or even building a home automation network. The Raspberry PI has also been used for other various projects such as super-computer projects where sixty-four Raspberry Pi's are attached together.
The Raspberry Pi is a good starting point for anyone who wants to get involved with internet projects and programming. The low cost makes it appeal to younger generations who do not have alot of money. The simple and easy-to-use programming language is great for beginners and youth.

TI Launchpad Development Boards

This Series of development boards is from Texas Instruments and is called the Launchpad. The Launchpad comes in four different series with 2-3 boards per series. Each of the boards are well priced when compared to other boards from other manufactures. These range in price from $9.99 to $29.99. Each board can be programmed with multiple different software packages. The MSP430, C2000 boards can be programmed with software very similar to the Arduino IDE, this interface is called Energia.
The four different series of Launchpads are called the MSP430, C2000, Tiva C and Hercules. Each series is named after the processor chip series contained on the board. The MSP430 series is a low power option that is designed for portable measurement applications. The C2000 series is designed for real-time motor control applications and advanced power circuits. The Tiva C series is targeted for industrial applications that use precision timed devices. The Hercules series is designed for automotive, industial and medical safety critical systems.

MSP430 Launchpad

The MSP430 has three boards in its family, the MSP-EXP430G2, MSP-EXP430F5529LP, and the MSP-BNDL-FR5969LCD. The MSP430 series is a low power option that is designed for portable measurement applications
The more expensive of the two development boards is the MSP430FR5969 Launchpad costing $29.99. Making it costing the most of the three MP430 boards. The development board 4 has a 20-pin GPIO interface, on-board buttons, LEDs and a Sharp memory LCD for quick building of simple user interfaces. The processor is the MSP430FR5969 device that is a RISC-based, 16-bit mixed-signal processor for ultra low power consumption systems. TI claims it is the lowest power consumption in the world of all MCU's. The MSP430FR5969 features: 16MHZ CPU speed, 64KB FRAM, 2KB RAM, LCD driver, RTC, 4 SPI, 2 UART, 2 I2C, PWM, 5 16-bit Timers, 12-bit ADC, and many more features found on the datasheet.

C2000 Launchpad

The C2000 has two boards in its family, both have very similar specifications. The LAUNCHXL-F28027 and the LAUNCHXL-F28027F, the two boards are both designed for real-time motor control applications and advanced power circuits.
The more feature packed of the two development boards is the TM4C1294XL Launchpad costing $17.00. The devopment board has two 40-pin interfaces allowing additon of displays, sensors, and wireless modules. The processor is the F28027F device that is a high efficiency 32-bit CPU running up to 60MHz. The features include; 22 individually programable multiplexed GPIO pins, low power consumption, 128KB RAM, 1 SPI, 1 UART, 1 I2C, 4 PWM, ADC, and many more features found on the datasheet.

Tiva C Launchpad

The Tiva C has two boards in its family, both have very similar specifications. The EK-TM4C123GXL and EK-TM4C129XL integrate a large number of communication features to enable highly connected devices that allow real-time control.
The more expensive of the two development boards is the EK-TM4C1294XL at $19.99. The board features out of the box internet connectivity by using the on-board ethernet port. The board features; buttons, LEDS, two 40 pin GPIO connectors, 1MB flash, Two 12 bit ADCs, General purpose timers, and an on-board in-circuit debug interface(used for programming). The processor is the TM4C129NCPDT device that is a ARM Cortex-M4F processor running at 120-Mhz providing high performance and advanced integration. The features are; 256KB SRAM, 6KB EEPROM, 8 UART, 4 quad SSI, 10 I2C, 2 CAN controllers, Ethernet, USB Host/Device, 8 timers, 8 PWM, and many more features found on the datasheet.

Hercules Launchpad

The Hercules has two boards it its family, both have very similar specifications. The LAUNCHXL-TMS57004 is built for transportation applications, while the LAUNCHXL-RM42 is for industrial and medical applications. Both boards are for safety critical applications.
The more safety critical is the LAUNCHXL-RM42 costing $19.99. This development board features; A general purpose switch, two LEDs, a 40-pin GPIO connector, on-board in-circuit debug interface. The processor is the RM42L432 device, it is a high-performance microcontroller designed for safety critical systems. The safety architecture is designed using dual 32-bit ARM Cortex-R4 CPU that can run up to 100 MHz in lockstep. Lockstep runs the same code on two processors at the same time in parallel. This redundancy allows error detection and correction by comparing the outputs of the two processors. The RM42L432 features are impressive featuring: 384KB Flash, 32kb RAM, 16KB EEPROM, 45 GPIO pins, 2 CAN controllers, Multi-buffered SPI, UART, PWM, 16 channel ADC, 19 programmable high-end timers, and many more features that can be found on the datasheet.

Wednesday, 12 March 2014

MSP430FR5969 LaunchPad Evaluation Kit MSP-BNDL-FR5969LCD - MSP430FR5969 LaunchPad Evaluation Kit with Sharp ® Memory LCD BoosterPack Bundle

MSP430FR5969 LaunchPad Evaluation Kit with Sharp ® Memory LCD BoosterPack Bundle

This development board is the MSP430FR5969 from Texas Instruments. This board has a terrible name, with good information hidden inside. The MSP430 is a from a line of 16 bit microcontroller chips, this chips code FR5969 comes from the FRAM series. The development board/Evaluation kit has on-board buttons, LEDs and a Sharp memory LCD for quick building of simple user interfaces. The board can be programmed with a interface very similar to the Arduino IDE, this interface is called Energia. The best feature of this board is the price, at only $29.99 this thing looks like a good deal.

The MSP430 is a RISC-based, mixed-signal processor for ultra low power consumption systems.TI claims it is the lowest power consumption in the world of all MCU's. The MSP430FR5969 features are impressive featuring: 16MHZ CPU speed, 40 GPIO max low-power, LCD driver RTC, SPI, UART, PWM and many more features including 64KBFRAM. FRAM stands for ferroelectric random access memory, this technology combines the speed, ultra-low power, endurance and flexibility of SRAM with the stability and reliability of Flash. this combination provides low power and easy to use microcontroller architecture.

Sunday, 2 February 2014

The World of the Internet of Things - Another Post in Progress

The world is becoming an internet of things and devices. Already today most people carry around a GPS device, accelerometer, temperature sensor, noise detector, colour and image detector, output screen, speaker, NFD communication, WiFi, Bluetooth and a touch screen. All these come packed in a nice little hand held device. Obliviously this is the modern day smart phone, with so many features, this is the starting point for the internet of things.

Below is a list of possible "things" to be sensed. Not all of them are viable as of today, mostly because of the high cost per sensor, they are more of in the near future option. An example of this is the GPS tracking of every parcel or package. It would not be viable to stick a $40 sensor on a $10 package. For the sensor is worth more than the package. If the package cost, let's say $400, I may want to use this option!

The List 
Personal - Blood Pressure, Blood Oxygen, Pulse Rate, ECG, Temperature, Body and limb position, Pedometer, GPS Position, Breathing rate, Sweating(GSR), Fall detection, Blood Sugar, UV radiation

Environment - Temperature, Humidity, Barometric Pressure, Light Intensity, Water conditions, Soil conditions, Wildlife tracking and health

Farm  - Crop growth, Soil conditions, Animal tracking and health, Moisture levels in plants, Sugar content eg. grapes, Hydroponics and green house conditions, Chlorophyll production.

Home  - Who's Home, Temperature, Humidity Light Intensity, Power consumption, Water consumption, Security, Grocery tracking

City - Exhaust fumes, Noise levels, Weather conditions, Traffic congestion, Transit bus GPS tracking

Automotive - Fuel use-age, Vehicle GPS tracking, automatic-diagnostics

Business - Real time GPS parcel tracking, Indoor air quality and conditions,

Factory - Emissions, Air quality, Energy and water consumption,


Hardware required to get on the internet.
Arduino UNO with WiFi shield
  • Shield occupies digital pins; 7,10, 11, 12, and 13. 
  • Communicates via SPI to the shield
Arduino UNO with CC3000 shield or module
  • Uses digital pins 3,5,10,11,12,and 13
  • Communicates via SPI to the shield or module
Arduino UNO with xbee
  • Uses digital pins; 0, and 1.
  • Communicates via serial to the xbee
Arduino YUN, onboard WiFi
  • All pins are available for use. 5V; 20 digital, 7PWM, 12 analog
  • Embedded Linux system pre-installed
Raspberry Pi with USB WiFi dongle
  • Not many GPIO pins available. 3.3V; 17 GPIO, no Analog
  • Can be used as a web server
  • Can run Linux, Android
  • Has A GPU, HDMI,  and old school analog TV out
BeagleBone Black with USB WiFi dongle
  • More GPIO than the Raspberry PI
  • Has a GPU, HDMI, and the easiest touch LCD configuration.
  • Pre-installed with Linux



Recording The Data
Data can be recorded and sent to a multiple of places on the internet.  Temboo is very useful to connect multiple services such as google sheets, Xively and mySQL. Temboo offers great code examples written in multiple languages, one of them being specificity for the Arduino YUN.
Cloud Data Logging Services
  • mySQL
  • Xively
  • Plot.ly
  • Google Drive
  • Nimbits
  • Carriots
  • Loggy
  • Amazon's DynamoDB


Displaying The Data
Traditional
  • Indicating lights, Sounds
  • Paper print-off
  • Telephone call
The Cell Phone
  • Android Apps
  • Apple Apps
Displays
  • Low Cost Screens - various models available can communicate serial, or SPI.
  • Touch Screens - various models available can communicate on serial, or plug in to hedders
  • HDMI Screens - Need to use a raspberry pi or Beaglebone black to do this.
Other Ways
  • Website
  • Text message
  • Twitter update
  • Facebook status






Saturday, 1 February 2014

Arduino YUN Development board

Arduino YUN
The Arduino YUN is one of the latest boards from Arduino, and is another development board that is leading the way for the internet of things. There is a a lot of hardware packed on this little Arduino footprint.

Hardware and Software
Their are two "sides" to this board the Arduino side and the Linux side, these two sides communicate with each other with SPI and Serial(UART).
Linux Side
The YUN comes loaded with a embedded sytsem of Linux called Linino, and is installed with a full version of Python 2.7. Linino runs on the Atheros AR9331 processor which also controls the WiFi, Ethernet, USB Host and the micro-SD card.
Arduino Side
The ATmega32u4 processor is also found on this board and can be programmed with the Arduino environment. The Atmega32u4 and the Atheros processor can communicate via SSH. Another impressive feature is that the Arduino side will run on the standard 5V, no need to use logic level converters here.

Getting Started
To get started, simply plug in the Arduino YUN to a USB power supply. Wait a few minutes and check your wireless connections, you should see that that Arduino will show up as a WiFi connection. This is good for local wireless programming, but we need it to connect to the internet.

  • Connect to your Yun via WiFi, this will take you off the internet.
  • Open a web browser and type in arduino.local , this will bring up the Arduino log in screen.
  • Type in the default password "arduino". 
  • Click advanced configuration panel. 
  • Under the network tab, click WiFi, here you should see your local WiFi network. 
  • Enter the necessary information and connect.
Note: if you forget your password hold down the WLAN button found on the board beside the full size USB.

Using Arduino IDE
Open the Arduino IDE and load the blink example found under the file menu under examples - basics - blink. Change your board settings to the YUN and the port to the Wifi connection. Upload the sketch to the Arduino board. If all has went well you should see a red LED blinking.


  • To do something a little more involved, we will load the Xively Client Sketch
  • Load the XivelyClient sketch found in the examples tab. 
  • Create a Xively account on their website 
  • Update the sketch with your credentials. 
  • Upload the sketch over the comm port. 
  • Open the serial monitor to initialize the sketch.
  • Check you Xively account for the data streams.


The reason for using the comm port and not the WiFi programming mode is that you will need to open up the serial monitor in order to start the sketch.

Using Linux
To make use of the linux system, you need to access the system via SSH. on windows this can be done using PUTTY. Enter in the following into PUTTY, replacing the IP
ssh root@172.16.1.190




Monday, 13 January 2014

BeagleBone Black: Digital Inputs and Outputs

This is part three of my posts on the amazing Beagle Bone Black. In this Post I will be going over the header pins that are found on the BeagleBone Black. I will also show you how to wire up some simple digital inputs and outputs and show you the program to control them.

The BeagleBone Black has a bunch of header pins, a whopping 65 digital I/O, 7 analog inputs, 8 PWMs, 4 timers, 4.5 serial UARTs, 2 I2C, and 2 SPI. Wow, that is a lot of pins, and that is not including the 3.3V, 5V, and GND. Some of these pins, like the PWM, share the same pins as other functions, like digital I/O.



To further understand these header pins compare the diagram above to the pin diagram on the left. On header P8 all of the pins are Digital I/O, but most are used for eMMC and HDMI. This leaves only pins 7 through 19 for user digital I/O.

There are 8 different pin diagrams that can be found on the interactive BBB website. Study these pin diagrams!

To get started using these pins we need to wire up some digital inputs and outputs, and write a simple program. so lets get going!

WHAT YOU NEED

BeagleBone Black w/ USB cable
Red LED 
470 ohm resistor
Momentary push button switch
Jumper wires
Breadboard


CONNECTIONS
From pin 2 (GND) connect a jumper wire to the cathode (short wire) of the LED.
From pin 13 (GPIO_23) connect a jumper wire to the resistor.
Connect the other end of the resistor to the anode (long wire) of the LED.
From pin 4 (3.3V) connect a jumper wire to one side of the switch.
From pin 19 (GPIO_22) connect a jumper wire to the other side of the switch



PROGRAMMING
Next we need to write a simple program, but first we will start  by learning a simple example program found on Cloud 9.
Launch Cloud 9 IDE from the BBB. If you dont know how to do this read my earlier post found here!
Next scroll over to the Project files and under demo double-click the blink.js file. 
The file should now be open. Now click Debug to run the program.
The LED should now be steadily blinking.
This makes use of the digital GPIO pin by declaring it an output. Notice that it also blinks the USR3 LED found on the BBB.

To make use of a digital input we need to edit the code as follows. This code can be found on beaglbone.org. When the button is pushed the LED will light up.

var b = require('bonescript');
b.pinMode('P8_19', b.INPUT);
b.pinMode('P8_13', b.OUTPUT);
setInterval(check,100);

function check(){
b.digitalRead('P8_19', checkButton);
}

function checkButton(x) {
  if(x.value == 1){
    b.digitalWrite('P8_13', b.HIGH);
  }
  else{
    b.digitalWrite('P8_13', b.LOW);
  }
}

This code can be easily edited to include more digital inputs and outputs such as toggle switches, and relays. The next post on the Beagle bone will include analog sensor inputs.

Tuesday, 7 January 2014

Intel Edison

Intel shocked the hacker/maker world a short while ago with the Galileo development board and it seems to be a good product (I have not tinkered with one yet). The follow up to Intel's Galileo board is upon us with the new Intel Edison, announced this week at CES 2014. The idea of this tiny SD card sized computer is for the wearable hacking world, they have created a good initiative contest called "make it wearable" with the grand prize being a half million dollars.

This thing is very very cool, it is a full Intel PC in the size of a SD card. The dual core system on a chip runs a full version of Linux and a low power real time operating system. This device has WiFi and Bluetooth low energy making it perfect for use with cell phone applications. Intel also provided solder pads for gpio, sdi, spi, uart, pwm, i2c, and i2s. The processor itself is called the 400MHZ Intel Quark, and is tiny at only 22nm. This 22nm processor is very game changing technology and comes from the revolutionary 3d tri-gate transistors, read more here.
I would guess that the Edison can be programmed via a SD card slot, It would assumed the Arduino programming environment could be used, much like the Galileo board. This device is not only good for the wearable hacking world but could be very useful across the hacking and making community. My main interest of this device is being for the Internet of Things, in particular environmental monitoring.
Here is a few video links of the Edison. The first link is from MAKE and describes what the chip is, and the second is from World Network News.

Thursday, 2 January 2014

So many languages, so little time. Part One

There is a lot of programming languages out there. I should say hundreds, and I asked myself. Self, which one is the best, and what are the top 20 languages to learn.
I already have started to learn a few including HTML, CSS, JavaScript, C, and Python. I know I need to learn more, but which one next? JAVA, C++, Objective C, Ruby........ I Dunno!

How will I determine the best language? this should be done by jobs available, most used today, popularity, and maybe even GitHub count.

So I have made a list of the top languages. They are in a rough order for now! I will make a chart later maybe. anyhow its a start.
I NEED to go to bed its 4 in the morning, gotta get up at 7.


Languages
HTML: With this you can create your own website, this post is written in HTML
CSS: Used to add a better appearance to web sites.
JAVA
XML
PHP
SQL: Used to create data tables
JavaScript
C: The legacy of language, this is where I started to learn.
C++
C#
Objective C
Python: The favourite language of Raspberry pi users
Perl
Ruby
ASP.NET
AJAX
ActionScript
Visual Basic
Visual Basic.NET
Pascal
MATLAB
Assembly
Coffee Script
SCALA
VimL
Processing 2