Demo-5    <<-BACK            HOME            UP --^           NEXT-->>  Demo-7
side4linux, a simple integrated development environment!

PCBS Demo-6 Tour of the 'MC1' Machine Controller PCB.


Purpose:  To
introduce the MC-1 Machine Controller Central Processing Unit.

Requirements:
Make sure that the 'GNOME' build environment is installed correctly, if not then read 'setup C build environment.txt' and also 'setup GNOME build environment.txt'.

Further Requirements:
Pre-Requisites: Read through the Overview and do Demo-1/2/3/4/5 first.

Intro:

Before describing the MC-1 CPU let me say that we are doing so as if it is connected to a two axis metal working lathe such as the one introduced in Demo-5. For a greater or lesser number of axis the process is the same only more/less tool slides are in action. You may also realise that the MC-1 CPU has a very general purpose layout and would easily suit other tasks such as in a vending machine or data logger etc. The Central Processing Unit or CPU of the Machine Controller is a simple board containing the Atmel AVR 128 Mega MPU, two Serial Ports and two Parallel Input/Output ports known as the Auxiliary Port and the General Expansion Port. The
AVR 128 Mega provides 128 Kbytes of read only memory (ROM), 4 Kbytes of Random Access Memory (RAM) and 4 Kbytes of non volatile memory (Flash) to store data between uses. For a more detailed understanding of the full power of this fine device please download the Manual from Atmel directly. The pin out for the  AVR 128 Mega is shown below,

Atmel AVR Mega-128 Pinout
Fig-1 Pin out diagram for the Atmel AVR Mega 128 (C) Atmel.

Figure-2 below shows the layout of the MC-1 CPU with ports marked,

CPU Layout
Fig-2 MC-1 CPU Layout.

Figure-3 shows the relationship between the higher level Tools provided with side4linux and the MC-1 Central Processing Unit. Once a G-Code file has been compiled by the Production Manager it can be passed from the controlling Linux PC using one of the 'Drive' programs ( Lathedrive in this lathe example) to the MC-1 CPU which is then under the Machine Operator's control. The Machine Operator will program the number of parts needed and feed the machine with metal rod as required. As you can see there are two points of control. Firstly the Lathedrive program must be activated to feed the raw step commands to the MC-1 and secondly, the Operator can use the Operator Panel on the Lathe to start, stop, change tooling and make dimensional adjustments.

Overview
Fig-3 Machine Controller Overview.

On the MC-1 CPU board are also MC1488 line driver and MC1489 line receiver chips to drive the serial ports needed for communicating with the controlling PC and another 'slave' if required. To complete the Machine Controller you need to add an Axis Power Board and a Spindle Drive Board, examples of which will be found in later Demo's.

For a more technical explanation of the MC-1 please review the current MC-1 Operating Manual (Local)



In Demo-7 we will assemble the 'MC-1' Machine Controller CPU.



We will provide other demos as 'side4linux' develops to cover integration into a real world machine controller.