410 likes | 441 Views
Robotics Programming and Design. Berry Nall bnall@romaisd.com. Personal. Employed by Roma High School Robotics coach Teach robotics and automation units in engineering course Training in 3 systems (VEX, Fischer-Technik, and Lego). Presentation files, extras. www.thenalls.net
E N D
Robotics Programming and Design Berry Nall bnall@romaisd.com
Personal • Employed by Roma High School • Robotics coach • Teach robotics and automation units in engineering course • Training in 3 systems (VEX, Fischer-Technik, and Lego)
Presentation files, extras • www.thenalls.net • select link to “Lego Robotics with leJOS”
“Your audience will be experienced CS teachers who are interested in possibly teaching the Robotics Programming course. So they will basically need a broad overview of the course, supplies, possible projects, etc.”
Presentation Outline • First hour: rapidly cover course TEKS • Second hour: Lego/Java specifics • Helpful(?) hints embedded throughout
Course Title: Robotics and Automation • Robotics – self-controlled machine that performs simple to complex tasks as programmed • Automation – machine performs repeated tasks
Objectives (from Introduction) • Work in project-based environment (focus on activities, not tests - yeah!!!) • Implement the design process • Prototype (build or use simulation software) • Explore career opportunities
TEKS (1) The student demonstrates the skills necessary for success in the workplace. • Much of this will be embedded • Includes career investigation. Ideas: • Interview people working in field • Internet-based research project • To embed: when finishing project, discuss job opportunities related to the project
TEKS (2) The student participates in team projects in various roles. (3) The student develops skills for managing a project. • My ideal team size: 3 members. • Idea: assign responsibilities as well as groups, and rotate responsibilities as well as groups. • Ex: mechanical engineer, software engineer, electrical engineer, and presentation manager • After project, have students evaluate own contributions and performance of team
TEKS (4) The student practices safe and proper work habits. • Primarily embedded. • We need to make effort to draw attention to this topic even when our projects are not ‘dangerous’. Safety is a huge issue in automation.
TEKS (5) The student develops the ability to use and maintain technological products, processes, and systems. • A) control device with a computer/program • B) troubleshoot (don’t solve all problems yourself!) • C) use process control factors [loops and feedback to automate a system; ex: thermostat] • D) Use motors, gears, and gear trains
TEKS (6) The student develops an understanding of the advanced concepts of physics, robotics, and automation. • (A) demonstrate knowledge of rotational dynamics, weight, friction, and traction factors • Ideas: start with basic robot. Change wheel size and determine how this affects turning, maximum speed. Determine how far the robot moves on different surfaces or carrying different weights.
TEKS (6) The student develops an understanding of the advanced concepts of physics, robotics, and automation. • (B) demonstrate knowledge of torque and power factors used in the operation of robotic systems [this involves gears:] • Big to small: fast but feeble • Small to big: strong but slow • Ratio of last gear to first gear is force/torque multiplier (invert for speed) • Idea: Start with building gear trains and counting rotations; culminate with challenge such as a race up an incline or while pulling a weight.
TEKS (6) The student develops an understanding of the advanced concepts of physics, robotics, and automation. • (C) demonstrate knowledge of feedback control loops to provide information • (D) demonstrate knowledge of different types of sensors used in robotic or automated systems and their operations • Feedback comes from sensors • Digital sensors (2 values) include all kinds of switches • Analog sensors (infinite values) include sound, color, ultrasonic, and light sensors. • Idea: start with simple activity for each sensor available. Culminate with obstacle course, line follower, or another challenging competition that uses sensors.
TEKS (7) The student develops an understanding of the characteristics and scope of manipulators and end effectors required for a robotic or automated system to function. • Definitions: • Manipulator = “arm” that can move with varying degrees of freedom • End effector = tool, grasper, or sensor attached to the manipulator
TEKS (7) The student develops an understanding of the characteristics and scope of manipulators and end effectors required for a robotic or automated system to function. • Definitions: • Manipulator = “arm” that can move with varying degrees of freedom • End effector = tool, grasper, or sensor attached to the manipulator • Idea: build arm that can pick up and move an object of specified weight/size from one side to the other without toppling.
TEKS (7) The student develops an understanding of the characteristics and scope of manipulators and end effectors required for a robotic or automated system to function. http://www.robotshop.com/en/owi-535-robotic-arm-edge.html
TEKS (8) The student uses engineering design methodologies. • (G, H) use an engineering notebook !!! Include in the notebook: • Project constraints • Brainstorming (prototype, program) • Decision process • Design modifications • Final product (prototype, product) • Why? The notebook is how you prove ownership and priority when patenting
TEKS (9) The student learns…through specific project-based assessments. • Most objectives can be embedded in fun and challenging projects. • Key to success: projects that engage • Competition • Creativity • Challenging
TEKS (10) The student designs products (11) The student builds a prototype using the appropriate tools, materials, and techniques. • These TEKS basically reiterate previous TEKS. • They suggest going beyond a commercial robotic system to building a custom device. • If you are ambitious, you can imitate Billy…. • More realistically, consider asking students to invest in Arduino board (or similar). They can take it with them and expand as they like.
Time rules • Students will take forever to build a robot if allowed. • Virtually all robots will need some redesign. • Students procrastinate paperwork. • Set firm intermediate deadlines: • Prototype build • Software testing • Revision • Final deadline for project
Hardware: Which robotics system? Hint: which robotics systems are used in competitions with high school students? • 2 options: VEX and Lego • Is your school already invested in one system?
Lego robotics system www.nxtprograms.com
Bolt together Software (none free): Flowchart (Flowol), LabView, or C++ Robust Training critical! Snap together Software (some free): Mindstorms, LabView, C++, Java Expandable with Tetrix Training helpful. VEX vs. Lego TEKS 9: The student is expected to (C) use multiple software applications to simulate robot behavior and present concepts.
Storage • Put serious thought into STORAGE as well as a system. You may need a “stock parts” center as well as “current project” box!
Software • I suggest starting with Mindstorms on a “standard” robot: • Robot: Students need direction at first. Saves time, helps them understand building basics. • Program: graphical approach helps them understand program flow (loops, decisions, variables). • Once they are comfortable with basic concepts, then move to Java.
leJOS: Java for Mindstorms • leJOS provides a set of commands so that a Lego robot can be easily controlled using Java. • Tutorials, forums, and extensive documentation are provided. • Start at: http://www.lejos.org/
leJOS: Java for Mindstorms Computer: • First install Mindstorms software for drivers. • Then, developers recommend Eclipse IDE. • Finally, install leJOS: Brick: • NXJ: upload firmware • EV3: format SD card
leJOS: Java for Mindstorms • Motors can be controlled independently, or a “pilot/navigator” can be initiated that will control two motors at once. • All Lego sensors and many third-party sensors are supported.
leJOS: Java for Mindstorms • You can use leJOS on a Lego robot to teach virtually any Java topic: • Inputs and outputs • Variables • Loops, conditions, and switches • Threads • Inheritance • Behavior programming
Easy ideas for robot courses Sensors: • Obstacle course: have shop make 1’ x 1’ “T”s from plywood, or just use textbooks. • Line follower: put tape on a tile floor. Change it the day robots are “graded”. Gears/friction: • Sumo-wrestling: if you don’t have a “ring”, use tape on a tile floor. Rules reflect lesson. Ex: robot must use 2 different sensors; wheels must be geared…. Also consider limiting size, weight, # parts.
Conclusion • This should be a FUN course for students AND teachers. • Don’t be intimidated by hardware: with Mindstorms, the hard part is programming – that’s your expertise!
Thank you! • Berry Nall • bnall@romaisd.com • www.thenalls.net; select link to “Lego Robotics with leJOS”