SlideShare una empresa de Scribd logo
1 de 37
CNC Machine 2D
Plotter
   Supervisor
D.R Eman Shaban
T.A Mahmoud Fayez
Team Members….

Hassan Awad Abd El-Aziz
Mahmoud Mohamed Hussein
 Mahmoud Salah Salam
 Marwan Ezz El-Deen
 Mohamed Momen Gamal El-Deen
Agenda….
•   Introduction
•   History
•   System Features
•   System Architecture
        Software subsystem
        Mechanical subsystem
        Electronic subsystem

• Mode of Operation
• Algorithms
• Testing and Simulations
Introduction,,,,
Introduction
 CNC Machine
Computer numerical control (CNC) machines are automated
  milling machines that make industrial components without
  human assistance. This is possible because CNC machines are
  fed a series of instructions that are delivered to an internal
  computer controller. These instructions are in the form of
  codes that belong to the numerical control programming
  language.
  The code used to program CNC machines is generically called
   G-code. However, G-code instructions are only part of the
  programming language. Specifically, G-codes give CNC
  machines the coordinates .
Introduction
  Project Idea
• Automation of 3 Motors to control the
  coordinates (X,Y,Z)of a pen with flexible
  head can be used as Plotter.
History
                             The first commercial NC
                              machines were built in
                              the 1950's, and ran from
                              punched tape.
                             CNC, and later CNC,
                              allowed for tremendous
                              increases in productivity
                              for machine tools
                              because the machines
                              could be run
                              automatically without
The first commercial NC       requiring constant
www.cnccookbook.com           attention from their
                              operator.
System Features…
System Features
• Rapid speed positioning using G00
• Plot line using G01
• Plot Circles using G02,G03 clockwise or
  anti-clock wise.
• Manual Mode control the position of the
  Plotter using Keyboard
• Programming Mode write full program
  includes moving plotter, Arithmetic
  operation and decisions instructions
System Architecture
System Architecture
Software Subsystem
User Interface
Terminal App

        Send G-Code Programs,
        Control Instruction
Interpreter



                                   Move Motors
                 Geometry                        Motors
                 Kernel

                          invoke
Configure
Timers           Timers
System Architecture cont
   Software Subsystem
There are 6 Main Software Modules
• MotorLib.h : Configure, Monitor and Move Motors.
• TimersLib.h : Configure periodic task.
• Interperter.h : Parse G-line program separate tokens and
  execute instruction
   – [simple Arithmetic instructions ADD MUL].
   – [Motor Instructions Operation G00,G01,G02,G03].
   – [Decision instruction JEQ,JNE].
System Architecture cont.
    Software Subsystem cont.
 • UART.h
    – Serial communication port driver to send the G-code
      program and control instruction to the machine
 • BresenhamLineDrawing.h
 • MidPointCircleDrawing.h
System Architecture
 Mechanical Subsystem
 3 Motors each one attached to AXIS (X,Y,Z)
   Stepper Motor with the following Description
      Step angle 1.8°
      Holding Torque: 3.9 Kg.cm (40 N.cm)
      Current 2 A
      leads: 6 wires (4 per coils 2 COM)
System Architecture cont
   CNC Machine Mechanical Design:




     Figure-1 Different views of Our CNC Machine
System Architecture cont
   Electronic Subsystem

  It consists of 8 bit At mega 328P microcontroller and stepper
   motor control drivers BAL 35 for controlling all the three
   stepper motors. Microcontroller generates necessary STEP and
   DIRECTION signals for each stepper motor controller to
   achieve desired speed and rotation. A RS 232 is used for
   communicating data between PC and microcontroller.
Control Modes

• We have three types of control mode:
  -Calibration Mode (CL).
  -Load Mode (LD).
  -Execution Mode (EXE).
Control Mode instruction


Command Description
CL       Manual Mode
LD       Program Mode
START    Executed the program stored on RAM
EXE      Read G_Line from serial and executed it immediately and
         acknowledge the next instruction
RESET     Reset the machine to the initial X_co,Y_co_Z_co coordinates
SETBX    Set border of our board on X-axis
SETBY    Set border of our board on Y-axis
SETBZ    Set border of our board on Z-axis
State Chart




State chart illustrates how to switch between modes
Machine Language Program instruction

      Command   Description

      G00       Rapid speed X,Y,Z Vector.
      G01       .linear interpolation between 2 points Bresenham line drawing

      G02       Clockwise circular interpolation.
      G03       Anti Clockwise circular interpolation.
      ADD       ADD operand [2] and operand [3] then put result set on
                Operand [1].


      MUL       MUL operand [2] and operand [3] then put result on Operand
                [1].
      JEQ       Jump if flag is set.
      JNE       Jump if flag is reset.
      CMP       Compare operand [1] and operand [2] and set Equal flag.


      EOP       End of program.
Syntax Language Program


• G00
   <Operation> {X [R|I] #} {Y [R|I] #} {Z [R|I] #}
   EX: G00 XI1000 YI1000 ZI1000

• G01
   <Operation> {X [R|I] #} {Y [R|I] #}
   EX: G01 XI1000 YI500
Syntax Language Program cont.


• G02 and G03
   <Operation> {R [R|I] #} {Q [R|I] #} {C [R|I] #}
   EX: G02 RI4000 QI0

• ADD and MUL
   <Operation> {R [R|I] n}, operand1, operand2
   EX: ADD RR1,RR2,II100 ; RR1=RR2+100
Example of G-Code programs

Hello CNC
CNC>Controll$
LD                        ;the following program describe of “CNC” text with G-code
G02 RI5000 QI2 CI2       ;draw "C"
G00 ZI1500              ;Lift Plotter
G00 XI1500 YI-10000     ;space between char
G00 ZI-1500            ;down Plotter
G00 YI10000            ;draw "|"
G01 XI5000 YI-10000    ;draw ""
G00 YI10000            ;draw "|"
G00 ZI1500             ;Lift Plotter
G00 XI6500 YI-10000    ;space between char
G00 ZI-1500           ;down Plotter
G02 RI5000 QI2 CI2    ; draw "C”
EOP
START
Algorithms…
Bresenham Line Drawing
        G01 Implementation
• Algorithm which determines which points
  in an n-dimensional raster should be
  plotted in order to form a close
  approximation to a straight line between
  two given points. It is commonly used to
  draw lines on a computer screen, as it
  uses only integer addition, subtraction and
  bit shifting, all of which are very cheap
  operations in standard computer
  architectures.
Similarities between computer
   screen and Our board

                                • Computer screen is divided into
                                  very small units called pixels and
                                  out board is divided into small
                                  movements called steps and we
                                  replaced the function of
                                   put pixel(X,Y); with step(Motor);



Figure-2 Sub-pixel display
http://en.wikipedia.org/wiki/Pixel
Example
Code written for screen   Code written for Out machine
)Put _pixel(X+1,Y+1       );Set_Direction(MotorX,Positive
                          );Set_Direction(MotroY,Positive
                          );parallerStep(MotorX,MotorY

)put_pixel(X+1,Y          Set_Direction(MotorX,Positive);
                          Step(&MotorX);

put_pixel(X,Y+1)          Set_Direction(MotorY,Positive);
                          Step(&MotorY);
)Put_pixel(X-1,Y          );Set_Direction(MotorX,Negative
                          );Step(&MotorX
Example of Bresenham Line
             Drawing
 Bresenham for drawing Line




   7°               60°                30°          45°

    Figure 3 our Implementation of Bresenham line
    drawing on Console Screen Different slope
Midpoint Algorithm
      G02,G03 Implementation
• the Midpoint circle algorithm is an
  algorithm used to determine the points
  needed for drawing a circle actually
  drawing one octant but we draw the other
  using mirroring. The algorithm is a variant
  of Bresenham's line algorithm, and is thus
  sometimes known as Bresenham's circle
  algorithm.
Midpoint Algorithm Example
      Bresenham's Circle algorithm




Figure-3 Rasterisation of a circle by the Bresenham algorithm
http://en.wikipedia.org/wiki/Midpoint_circle_algorithm
G00 Implementation
• Implementation phases
  – Enable Interrupt handler of Each Timer[0,1,2]
  – Configure Timer to trigger event
    (On_TimerOverFlow)(void**); when Timer
    overflow
• The foreground program is free to do
  useful work as it is occasionally
  interrupted output operations.
Context switching between
         Motors on G00 command
                      Foreground
                       Foreground   Step    Step    Step
            Time      process
                       process      MotoX   MotoZ   MotoY




Figure-4
Context switching between
Step(&MotorX),
Step(&MotorY) and
Step(&MotorZ)
Testing and Simulations…
Testing and Simulations…
   (PROTEUS)
 • We simulate the behavior of motors
   [#of performed step, frequency of the pulses] using
   PROTEUS simulator. It enables us to test and debug
   faster than the physical level.
 • DEMO OF PROTEUS
Testing and Simulations…
  (Final Demo)


           Start
THANKS 

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

CNC Milling
CNC MillingCNC Milling
CNC Milling
 
CNC Part programming
CNC Part programmingCNC Part programming
CNC Part programming
 
Hommemade CNC machine
Hommemade CNC machineHommemade CNC machine
Hommemade CNC machine
 
CNC machine\ and its types
CNC machine\ and its typesCNC machine\ and its types
CNC machine\ and its types
 
4 basic cnc programming milling
4 basic cnc programming milling4 basic cnc programming milling
4 basic cnc programming milling
 
1. cad fundamental
1. cad fundamental1. cad fundamental
1. cad fundamental
 
CNC plotter controlled using Android application
CNC plotter controlled using Android applicationCNC plotter controlled using Android application
CNC plotter controlled using Android application
 
CNC MACHINE
CNC MACHINECNC MACHINE
CNC MACHINE
 
Cnc part programming 4 unit
Cnc part programming 4 unitCnc part programming 4 unit
Cnc part programming 4 unit
 
Cad
CadCad
Cad
 
NC, CNC & DNC Machine
NC, CNC & DNC Machine NC, CNC & DNC Machine
NC, CNC & DNC Machine
 
ppt on cnc
ppt on cncppt on cnc
ppt on cnc
 
CNC Turning and Milling centres
CNC Turning and Milling centresCNC Turning and Milling centres
CNC Turning and Milling centres
 
ppt of solid modeling for cad
ppt of solid modeling for cadppt of solid modeling for cad
ppt of solid modeling for cad
 
VMC Machine
VMC Machine VMC Machine
VMC Machine
 
CNC AND ITS COMPONENTS
CNC AND ITS COMPONENTSCNC AND ITS COMPONENTS
CNC AND ITS COMPONENTS
 
Introduction to CNC machine and Hardware.
Introduction to CNC machine and Hardware. Introduction to CNC machine and Hardware.
Introduction to CNC machine and Hardware.
 
Numeric control
Numeric controlNumeric control
Numeric control
 
Tool presetting
Tool presettingTool presetting
Tool presetting
 
CNC(KAPIL)
CNC(KAPIL)CNC(KAPIL)
CNC(KAPIL)
 

Destacado

Mini CNC (Router Machine)
Mini CNC (Router Machine)Mini CNC (Router Machine)
Mini CNC (Router Machine)Amir Dawa
 
Printer Plotter (special printers )
Printer Plotter (special printers )Printer Plotter (special printers )
Printer Plotter (special printers )Venkat Karanam
 
CNC Machines
CNC MachinesCNC Machines
CNC Machinespratik207
 
Gesture control robot using by Ardiuno
Gesture control robot using by ArdiunoGesture control robot using by Ardiuno
Gesture control robot using by ArdiunoSudhir Kumar
 
Capstone phase 2 Online Overview: 3-Axis Motorized PIC Machine
Capstone phase 2 Online Overview: 3-Axis Motorized PIC MachineCapstone phase 2 Online Overview: 3-Axis Motorized PIC Machine
Capstone phase 2 Online Overview: 3-Axis Motorized PIC Machinebri_rep_45
 
Printers vs. Plotters
Printers vs. PlottersPrinters vs. Plotters
Printers vs. PlottersDanish Parkar
 
Universal CNC Milling Machine
Universal CNC Milling MachineUniversal CNC Milling Machine
Universal CNC Milling MachineRTK Industries
 
Footstep Power Generation
Footstep Power GenerationFootstep Power Generation
Footstep Power GenerationDhanunjaya Raj
 
scanners and plotters
scanners and plottersscanners and plotters
scanners and plottersHeenM
 
line following robot
line following robotline following robot
line following robotRehnaz Razvi
 
Slotting machine (slotter)
Slotting machine (slotter)Slotting machine (slotter)
Slotting machine (slotter)mechnoe
 
Annual Report (FY-2015-16) of Kuwer Industries Ltd.
Annual Report (FY-2015-16) of Kuwer Industries Ltd.Annual Report (FY-2015-16) of Kuwer Industries Ltd.
Annual Report (FY-2015-16) of Kuwer Industries Ltd.IndiaMART InterMESH Limited
 
Project report-format by vishal
Project report-format by vishalProject report-format by vishal
Project report-format by vishalvishal18900
 

Destacado (20)

2D ROBOTIC PLOTTER
2D ROBOTIC PLOTTER2D ROBOTIC PLOTTER
2D ROBOTIC PLOTTER
 
Mini CNC (Router Machine)
Mini CNC (Router Machine)Mini CNC (Router Machine)
Mini CNC (Router Machine)
 
Printer Plotter (special printers )
Printer Plotter (special printers )Printer Plotter (special printers )
Printer Plotter (special printers )
 
CNC Machines
CNC MachinesCNC Machines
CNC Machines
 
CNC Seminar
CNC SeminarCNC Seminar
CNC Seminar
 
Plotters
PlottersPlotters
Plotters
 
Gesture control robot using by Ardiuno
Gesture control robot using by ArdiunoGesture control robot using by Ardiuno
Gesture control robot using by Ardiuno
 
Capstone phase 2 Online Overview: 3-Axis Motorized PIC Machine
Capstone phase 2 Online Overview: 3-Axis Motorized PIC MachineCapstone phase 2 Online Overview: 3-Axis Motorized PIC Machine
Capstone phase 2 Online Overview: 3-Axis Motorized PIC Machine
 
Printers vs. Plotters
Printers vs. PlottersPrinters vs. Plotters
Printers vs. Plotters
 
Universal CNC Milling Machine
Universal CNC Milling MachineUniversal CNC Milling Machine
Universal CNC Milling Machine
 
What is a cnc machine
What is a cnc machineWhat is a cnc machine
What is a cnc machine
 
Footstep Power Generation
Footstep Power GenerationFootstep Power Generation
Footstep Power Generation
 
scanners and plotters
scanners and plottersscanners and plotters
scanners and plotters
 
Slotting machine
Slotting machineSlotting machine
Slotting machine
 
line following robot
line following robotline following robot
line following robot
 
Slotting machine (slotter)
Slotting machine (slotter)Slotting machine (slotter)
Slotting machine (slotter)
 
Mechanical CNC machine
Mechanical CNC machineMechanical CNC machine
Mechanical CNC machine
 
Annual Report (FY-2015-16) of Kuwer Industries Ltd.
Annual Report (FY-2015-16) of Kuwer Industries Ltd.Annual Report (FY-2015-16) of Kuwer Industries Ltd.
Annual Report (FY-2015-16) of Kuwer Industries Ltd.
 
Cnc Milling
Cnc MillingCnc Milling
Cnc Milling
 
Project report-format by vishal
Project report-format by vishalProject report-format by vishal
Project report-format by vishal
 

Similar a 2D Plotter Presentation

A project report of map of india made by the CNC SIMULATOR PRO software Mech...
A  project report of map of india made by the CNC SIMULATOR PRO software Mech...A  project report of map of india made by the CNC SIMULATOR PRO software Mech...
A project report of map of india made by the CNC SIMULATOR PRO software Mech...Jayant Tailor
 
IRJET- Automatic Mini CNC Machine for PCB Drawing using Arduino
IRJET- Automatic Mini CNC Machine for PCB Drawing using ArduinoIRJET- Automatic Mini CNC Machine for PCB Drawing using Arduino
IRJET- Automatic Mini CNC Machine for PCB Drawing using ArduinoIRJET Journal
 
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...ijsrd.com
 
Lo #5 manufacturing technology (jan 2016)
Lo #5 manufacturing technology (jan  2016)Lo #5 manufacturing technology (jan  2016)
Lo #5 manufacturing technology (jan 2016)Abdulaziz AlSuwaidi
 
Numerical control and CNC
Numerical control and CNCNumerical control and CNC
Numerical control and CNCnmahi96
 
Recent Advancement of CNC Technology
Recent Advancement of CNC TechnologyRecent Advancement of CNC Technology
Recent Advancement of CNC TechnologyDebiprasad Sena
 
Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.NegesaBekuma
 
Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.NegesaBekuma
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdf
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdfCh-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdf
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdfJAYANTKUMAR469151
 
CNC part programming
CNC part programmingCNC part programming
CNC part programmingjntuhcej
 
CNC Programmingmodifies examination 1
CNC Programmingmodifies examination 1CNC Programmingmodifies examination 1
CNC Programmingmodifies examination 1Prof. S.Rajendiran
 

Similar a 2D Plotter Presentation (20)

Me3m02 expt p3
Me3m02 expt p3Me3m02 expt p3
Me3m02 expt p3
 
A project report of map of india made by the CNC SIMULATOR PRO software Mech...
A  project report of map of india made by the CNC SIMULATOR PRO software Mech...A  project report of map of india made by the CNC SIMULATOR PRO software Mech...
A project report of map of india made by the CNC SIMULATOR PRO software Mech...
 
IRJET- Automatic Mini CNC Machine for PCB Drawing using Arduino
IRJET- Automatic Mini CNC Machine for PCB Drawing using ArduinoIRJET- Automatic Mini CNC Machine for PCB Drawing using Arduino
IRJET- Automatic Mini CNC Machine for PCB Drawing using Arduino
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
CNC.ppt
CNC.pptCNC.ppt
CNC.ppt
 
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...
3-Axis Motion Control of CNC Machine based on G-Code, M-Code using FPGA and a...
 
Predefence.pptx
Predefence.pptxPredefence.pptx
Predefence.pptx
 
Lo #5 manufacturing technology (jan 2016)
Lo #5 manufacturing technology (jan  2016)Lo #5 manufacturing technology (jan  2016)
Lo #5 manufacturing technology (jan 2016)
 
Numerical control and CNC
Numerical control and CNCNumerical control and CNC
Numerical control and CNC
 
Recent Advancement of CNC Technology
Recent Advancement of CNC TechnologyRecent Advancement of CNC Technology
Recent Advancement of CNC Technology
 
Cnc programming
Cnc programmingCnc programming
Cnc programming
 
Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.
 
Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.Mechatronics and manufacturing automation7 program.
Mechatronics and manufacturing automation7 program.
 
Bhel ppt
Bhel pptBhel ppt
Bhel ppt
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdf
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdfCh-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdf
Ch-11 NC; CNC; DNC; FMS; Automation and Robotics_2.pdf
 
Cnc programming basics.doc
Cnc programming basics.docCnc programming basics.doc
Cnc programming basics.doc
 
cnc machining
cnc machiningcnc machining
cnc machining
 
CNC part programming
CNC part programmingCNC part programming
CNC part programming
 
CNC Programmingmodifies examination 1
CNC Programmingmodifies examination 1CNC Programmingmodifies examination 1
CNC Programmingmodifies examination 1
 

Último

What Causes BMW Chassis Stabilization Malfunction Warning To Appear
What Causes BMW Chassis Stabilization Malfunction Warning To AppearWhat Causes BMW Chassis Stabilization Malfunction Warning To Appear
What Causes BMW Chassis Stabilization Malfunction Warning To AppearJCL Automotive
 
Tata_Nexon_brochure tata nexon brochure tata
Tata_Nexon_brochure tata nexon brochure tataTata_Nexon_brochure tata nexon brochure tata
Tata_Nexon_brochure tata nexon brochure tataaritradey27234
 
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...amitlee9823
 
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...amitlee9823
 
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...anilsa9823
 
9990611130 Find & Book Russian Call Girls In Vijay Nagar
9990611130 Find & Book Russian Call Girls In Vijay Nagar9990611130 Find & Book Russian Call Girls In Vijay Nagar
9990611130 Find & Book Russian Call Girls In Vijay NagarGenuineGirls
 
What Could Cause Your Subaru's Touch Screen To Stop Working
What Could Cause Your Subaru's Touch Screen To Stop WorkingWhat Could Cause Your Subaru's Touch Screen To Stop Working
What Could Cause Your Subaru's Touch Screen To Stop WorkingBruce Cox Imports
 
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp NumberVip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Numberkumarajju5765
 
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国ezgenuh
 
John Deere Tractors 6130M 6140M Diagnostic Manual
John Deere Tractors  6130M 6140M Diagnostic ManualJohn Deere Tractors  6130M 6140M Diagnostic Manual
John Deere Tractors 6130M 6140M Diagnostic ManualExcavator
 
John deere 425 445 455 Maitenance Manual
John deere 425 445 455 Maitenance ManualJohn deere 425 445 455 Maitenance Manual
John deere 425 445 455 Maitenance ManualExcavator
 
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!AutoScandia
 
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理ezgenuh
 
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...lizamodels9
 
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Callshivangimorya083
 
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagardollysharma2066
 
Greenery-Palette Pitch Deck by Slidesgo.pptx
Greenery-Palette Pitch Deck by Slidesgo.pptxGreenery-Palette Pitch Deck by Slidesgo.pptx
Greenery-Palette Pitch Deck by Slidesgo.pptxzohiiimughal286
 

Último (20)

What Causes BMW Chassis Stabilization Malfunction Warning To Appear
What Causes BMW Chassis Stabilization Malfunction Warning To AppearWhat Causes BMW Chassis Stabilization Malfunction Warning To Appear
What Causes BMW Chassis Stabilization Malfunction Warning To Appear
 
Tata_Nexon_brochure tata nexon brochure tata
Tata_Nexon_brochure tata nexon brochure tataTata_Nexon_brochure tata nexon brochure tata
Tata_Nexon_brochure tata nexon brochure tata
 
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
Call Girls Bangalore Just Call 👗 7737669865 👗 Top Class Call Girl Service Ban...
 
(INDIRA) Call Girl Nashik Call Now 8617697112 Nashik Escorts 24x7
(INDIRA) Call Girl Nashik Call Now 8617697112 Nashik Escorts 24x7(INDIRA) Call Girl Nashik Call Now 8617697112 Nashik Escorts 24x7
(INDIRA) Call Girl Nashik Call Now 8617697112 Nashik Escorts 24x7
 
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...
Bangalore Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore E...
 
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...
Lucknow 💋 (Genuine) Escort Service Lucknow | Service-oriented sexy call girls...
 
9990611130 Find & Book Russian Call Girls In Vijay Nagar
9990611130 Find & Book Russian Call Girls In Vijay Nagar9990611130 Find & Book Russian Call Girls In Vijay Nagar
9990611130 Find & Book Russian Call Girls In Vijay Nagar
 
What Could Cause Your Subaru's Touch Screen To Stop Working
What Could Cause Your Subaru's Touch Screen To Stop WorkingWhat Could Cause Your Subaru's Touch Screen To Stop Working
What Could Cause Your Subaru's Touch Screen To Stop Working
 
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp NumberVip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Vip Hot Call Girls 🫤 Mahipalpur ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
 
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国
一比一原版(UVic学位证书)维多利亚大学毕业证学历认证买留学回国
 
John Deere Tractors 6130M 6140M Diagnostic Manual
John Deere Tractors  6130M 6140M Diagnostic ManualJohn Deere Tractors  6130M 6140M Diagnostic Manual
John Deere Tractors 6130M 6140M Diagnostic Manual
 
Call Now ≽ 9953056974 ≼🔝 Call Girls In Shankar vihar ≼🔝 Delhi door step delev...
Call Now ≽ 9953056974 ≼🔝 Call Girls In Shankar vihar ≼🔝 Delhi door step delev...Call Now ≽ 9953056974 ≼🔝 Call Girls In Shankar vihar ≼🔝 Delhi door step delev...
Call Now ≽ 9953056974 ≼🔝 Call Girls In Shankar vihar ≼🔝 Delhi door step delev...
 
John deere 425 445 455 Maitenance Manual
John deere 425 445 455 Maitenance ManualJohn deere 425 445 455 Maitenance Manual
John deere 425 445 455 Maitenance Manual
 
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!
Why Won't Your Subaru Key Come Out Of The Ignition Find Out Here!
 
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理
一比一原版(PU学位证书)普渡大学毕业证学历认证加急办理
 
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...
Call Girls In Kotla Mubarakpur Delhi ❤️8448577510 ⊹Best Escorts Service In 24...
 
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip CallDelhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
Delhi Call Girls Vikaspuri 9711199171 ☎✔👌✔ Whatsapp Hard And Sexy Vip Call
 
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar
83778-77756 ( HER.SELF ) Brings Call Girls In Laxmi Nagar
 
Stay Cool and Compliant: Know Your Window Tint Laws Before You Tint
Stay Cool and Compliant: Know Your Window Tint Laws Before You TintStay Cool and Compliant: Know Your Window Tint Laws Before You Tint
Stay Cool and Compliant: Know Your Window Tint Laws Before You Tint
 
Greenery-Palette Pitch Deck by Slidesgo.pptx
Greenery-Palette Pitch Deck by Slidesgo.pptxGreenery-Palette Pitch Deck by Slidesgo.pptx
Greenery-Palette Pitch Deck by Slidesgo.pptx
 

2D Plotter Presentation

  • 1. CNC Machine 2D Plotter Supervisor D.R Eman Shaban T.A Mahmoud Fayez
  • 2. Team Members…. Hassan Awad Abd El-Aziz Mahmoud Mohamed Hussein  Mahmoud Salah Salam  Marwan Ezz El-Deen  Mohamed Momen Gamal El-Deen
  • 3. Agenda…. • Introduction • History • System Features • System Architecture  Software subsystem  Mechanical subsystem  Electronic subsystem • Mode of Operation • Algorithms • Testing and Simulations
  • 5. Introduction CNC Machine Computer numerical control (CNC) machines are automated milling machines that make industrial components without human assistance. This is possible because CNC machines are fed a series of instructions that are delivered to an internal computer controller. These instructions are in the form of codes that belong to the numerical control programming language. The code used to program CNC machines is generically called G-code. However, G-code instructions are only part of the programming language. Specifically, G-codes give CNC machines the coordinates .
  • 6. Introduction Project Idea • Automation of 3 Motors to control the coordinates (X,Y,Z)of a pen with flexible head can be used as Plotter.
  • 7. History  The first commercial NC machines were built in the 1950's, and ran from punched tape.  CNC, and later CNC, allowed for tremendous increases in productivity for machine tools because the machines could be run automatically without The first commercial NC requiring constant www.cnccookbook.com attention from their operator.
  • 9. System Features • Rapid speed positioning using G00 • Plot line using G01 • Plot Circles using G02,G03 clockwise or anti-clock wise. • Manual Mode control the position of the Plotter using Keyboard • Programming Mode write full program includes moving plotter, Arithmetic operation and decisions instructions
  • 12. Software Subsystem User Interface Terminal App Send G-Code Programs, Control Instruction Interpreter Move Motors Geometry Motors Kernel invoke Configure Timers Timers
  • 13. System Architecture cont Software Subsystem There are 6 Main Software Modules • MotorLib.h : Configure, Monitor and Move Motors. • TimersLib.h : Configure periodic task. • Interperter.h : Parse G-line program separate tokens and execute instruction – [simple Arithmetic instructions ADD MUL]. – [Motor Instructions Operation G00,G01,G02,G03]. – [Decision instruction JEQ,JNE].
  • 14. System Architecture cont. Software Subsystem cont. • UART.h – Serial communication port driver to send the G-code program and control instruction to the machine • BresenhamLineDrawing.h • MidPointCircleDrawing.h
  • 15. System Architecture Mechanical Subsystem  3 Motors each one attached to AXIS (X,Y,Z)  Stepper Motor with the following Description  Step angle 1.8°  Holding Torque: 3.9 Kg.cm (40 N.cm)  Current 2 A  leads: 6 wires (4 per coils 2 COM)
  • 16. System Architecture cont CNC Machine Mechanical Design: Figure-1 Different views of Our CNC Machine
  • 17. System Architecture cont Electronic Subsystem  It consists of 8 bit At mega 328P microcontroller and stepper motor control drivers BAL 35 for controlling all the three stepper motors. Microcontroller generates necessary STEP and DIRECTION signals for each stepper motor controller to achieve desired speed and rotation. A RS 232 is used for communicating data between PC and microcontroller.
  • 18. Control Modes • We have three types of control mode: -Calibration Mode (CL). -Load Mode (LD). -Execution Mode (EXE).
  • 19. Control Mode instruction Command Description CL Manual Mode LD Program Mode START Executed the program stored on RAM EXE Read G_Line from serial and executed it immediately and acknowledge the next instruction RESET Reset the machine to the initial X_co,Y_co_Z_co coordinates SETBX Set border of our board on X-axis SETBY Set border of our board on Y-axis SETBZ Set border of our board on Z-axis
  • 20. State Chart State chart illustrates how to switch between modes
  • 21. Machine Language Program instruction Command Description G00 Rapid speed X,Y,Z Vector. G01 .linear interpolation between 2 points Bresenham line drawing G02 Clockwise circular interpolation. G03 Anti Clockwise circular interpolation. ADD ADD operand [2] and operand [3] then put result set on Operand [1]. MUL MUL operand [2] and operand [3] then put result on Operand [1]. JEQ Jump if flag is set. JNE Jump if flag is reset. CMP Compare operand [1] and operand [2] and set Equal flag. EOP End of program.
  • 22. Syntax Language Program • G00 <Operation> {X [R|I] #} {Y [R|I] #} {Z [R|I] #} EX: G00 XI1000 YI1000 ZI1000 • G01 <Operation> {X [R|I] #} {Y [R|I] #} EX: G01 XI1000 YI500
  • 23. Syntax Language Program cont. • G02 and G03 <Operation> {R [R|I] #} {Q [R|I] #} {C [R|I] #} EX: G02 RI4000 QI0 • ADD and MUL <Operation> {R [R|I] n}, operand1, operand2 EX: ADD RR1,RR2,II100 ; RR1=RR2+100
  • 24. Example of G-Code programs Hello CNC CNC>Controll$ LD ;the following program describe of “CNC” text with G-code G02 RI5000 QI2 CI2 ;draw "C" G00 ZI1500 ;Lift Plotter G00 XI1500 YI-10000 ;space between char G00 ZI-1500 ;down Plotter G00 YI10000 ;draw "|" G01 XI5000 YI-10000 ;draw "" G00 YI10000 ;draw "|" G00 ZI1500 ;Lift Plotter G00 XI6500 YI-10000 ;space between char G00 ZI-1500 ;down Plotter G02 RI5000 QI2 CI2 ; draw "C” EOP START
  • 26. Bresenham Line Drawing G01 Implementation • Algorithm which determines which points in an n-dimensional raster should be plotted in order to form a close approximation to a straight line between two given points. It is commonly used to draw lines on a computer screen, as it uses only integer addition, subtraction and bit shifting, all of which are very cheap operations in standard computer architectures.
  • 27. Similarities between computer screen and Our board • Computer screen is divided into very small units called pixels and out board is divided into small movements called steps and we replaced the function of put pixel(X,Y); with step(Motor); Figure-2 Sub-pixel display http://en.wikipedia.org/wiki/Pixel
  • 28. Example Code written for screen Code written for Out machine )Put _pixel(X+1,Y+1 );Set_Direction(MotorX,Positive );Set_Direction(MotroY,Positive );parallerStep(MotorX,MotorY )put_pixel(X+1,Y Set_Direction(MotorX,Positive); Step(&MotorX); put_pixel(X,Y+1) Set_Direction(MotorY,Positive); Step(&MotorY); )Put_pixel(X-1,Y );Set_Direction(MotorX,Negative );Step(&MotorX
  • 29. Example of Bresenham Line Drawing  Bresenham for drawing Line 7° 60° 30° 45° Figure 3 our Implementation of Bresenham line drawing on Console Screen Different slope
  • 30. Midpoint Algorithm G02,G03 Implementation • the Midpoint circle algorithm is an algorithm used to determine the points needed for drawing a circle actually drawing one octant but we draw the other using mirroring. The algorithm is a variant of Bresenham's line algorithm, and is thus sometimes known as Bresenham's circle algorithm.
  • 31. Midpoint Algorithm Example Bresenham's Circle algorithm Figure-3 Rasterisation of a circle by the Bresenham algorithm http://en.wikipedia.org/wiki/Midpoint_circle_algorithm
  • 32. G00 Implementation • Implementation phases – Enable Interrupt handler of Each Timer[0,1,2] – Configure Timer to trigger event (On_TimerOverFlow)(void**); when Timer overflow • The foreground program is free to do useful work as it is occasionally interrupted output operations.
  • 33. Context switching between Motors on G00 command Foreground Foreground Step Step Step Time process process MotoX MotoZ MotoY Figure-4 Context switching between Step(&MotorX), Step(&MotorY) and Step(&MotorZ)
  • 35. Testing and Simulations… (PROTEUS) • We simulate the behavior of motors [#of performed step, frequency of the pulses] using PROTEUS simulator. It enables us to test and debug faster than the physical level. • DEMO OF PROTEUS
  • 36. Testing and Simulations… (Final Demo) Start

Notas del editor

  1. مهمة اوى نقطة ان الماشين شغالة بال COMMANDS