This document provides an introduction and overview of the ROBOTC programming environment. It discusses key aspects like selecting the platform type, downloading programs, using sample programs and function libraries, configuring motors and sensors, writing comments, and debugging programs. It also provides resources for learning more about ROBOTC programming and robotics competitions. The document guides users through writing a basic ROBOTC practice program that controls a motor and adds LED feedback.
Building a Network IP Camera using ErlangFrank Hunleth
This is my Erlang Factory SF 2014 talk on using the Nerves project to make a streaming IP camera with the Beaglebone Black and a custom image sensor cape. The presentation provides throughput, latency, and memory usage measurements to motivate using Erlang in embedded Linux-based devices.
Using Erlang on the RaspberryPi to interact with the physical worldBrian Chamberlain
Embedded linux systems are gaining in popularity in the maker/hacker communities. Platforms such as the BeagleBone and RaspberryPi have created new interest in systems which can interact with the physical world. However, interacting with the physical world can be a challenge. Luckily, we have Erlang to help us out. This talk covers new hardware platforms, embedded linux systems, why Erlang is a good fit, and how you can get started hardware hacking the world with Erlang.
Using Erlang in an Embedded and Cross-Compiled WorldFrank Hunleth
This presentation gives an overview of turning Erlang/OTP releases into Flash images that are ready to copy to an SDCard and run on a BeagleBone Black. It was presented at the ErlangDC conference on 12/7/2013.
Badge Hacking with Nerves Workshop - ElixirConf 2016 - Justin Schneck and Fra...GregMefford
These are the slides from the Badge Hacking with Nerves workshop from ElixirConf 2016, presented by Justin Schneck and Frank Hunleth, with help from Garth Hitchens, Chris Dutton, and Greg Mefford.
Building a Network IP Camera using ErlangFrank Hunleth
This is my Erlang Factory SF 2014 talk on using the Nerves project to make a streaming IP camera with the Beaglebone Black and a custom image sensor cape. The presentation provides throughput, latency, and memory usage measurements to motivate using Erlang in embedded Linux-based devices.
Using Erlang on the RaspberryPi to interact with the physical worldBrian Chamberlain
Embedded linux systems are gaining in popularity in the maker/hacker communities. Platforms such as the BeagleBone and RaspberryPi have created new interest in systems which can interact with the physical world. However, interacting with the physical world can be a challenge. Luckily, we have Erlang to help us out. This talk covers new hardware platforms, embedded linux systems, why Erlang is a good fit, and how you can get started hardware hacking the world with Erlang.
Using Erlang in an Embedded and Cross-Compiled WorldFrank Hunleth
This presentation gives an overview of turning Erlang/OTP releases into Flash images that are ready to copy to an SDCard and run on a BeagleBone Black. It was presented at the ErlangDC conference on 12/7/2013.
Badge Hacking with Nerves Workshop - ElixirConf 2016 - Justin Schneck and Fra...GregMefford
These are the slides from the Badge Hacking with Nerves workshop from ElixirConf 2016, presented by Justin Schneck and Frank Hunleth, with help from Garth Hitchens, Chris Dutton, and Greg Mefford.
My talk from the Bay area puppetcamp about deploying puppet code to a global network of puppet masters as quickly as possible.
Covers the design and implementation of the TIM Group (and now Yelp) puppetupdate mcollective agent: https://github.com/Yelp/puppetupdate/
This lecture addresses the Use of Signals by the Linux Kernel, and the process behavior upon receiving signals. The popular signals are outlined
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
THIS PPT CONTAINS THE DETAILS ABOUT THE VARIOUS LANGUAGE PROCESSORS/LANGUAGE TRANSLATORS- THE COMPILER & THE INTERPRETER, OPERATING SYSTEMS & ITS FUNCTION, PARALLEL & CLOUD COMPUTING
Dynamic Instrumentation- OpenEBS Golang Meetup July 2017OpenEBS
The slides were presented by Jeffry Molanus who is the CTO of OpenEBS in Golang Meetup. OpenEBS is an open source cloud native storage. OpenEBS delivers storage and storage services to containerized environments. OpenEBS allows stateful workloads to be managed more like stateless containers. OpenEBS storage services include: per container (or pod) QoS SLAs, tiering and replica policies across AZs and environments, and predictable and scalable performance.Our vision is simple: let’s let storage and storage services for persistent workloads be so fully integrated into the environment and hence managed automatically that is almost disappears into the background as just yet another infrastructure service that works.
Kiwi PyCon 2011, Wellington, Spotlight on Python by Nick Cave-Lynch, Spotlight on Python.
Covers development and use of a Python-powered system designed for lighting bands in small venues. Covers (among other things): the problems of lighting bands; the development process; the results; lessons learned.
LAS16-400: Mini Conference 3 AOSP (Session 1)Linaro
LAS16-400: Mini Conference 3 AOSP (Session 1)
Speakers: Thomas Gall, Bernhard Rosenkränzer
Date: September 29, 2016
★ Session Description ★
The Android Open Source Project is one community which is strategic to Linaro and it’s members. The purpose of this mini conference is to gather fellow Android engineers together from the community, member companies, and Linaro to discuss engineering activities and improve collaboration across different groups.
Within this mini conference we encourage discussion and presentations to advance engineering topics, forge consensus and educate each other.
The tentative agenda for this mini conference includes :
- Quick introduction
- Filesystems - Between requirements for encryption and standing concerns about degrading performance as an Android file system age, let’s have some discussion involving current data, known issues and towards improvements in this area for Android.
- HAL consolidation - Review current status and discuss next steps to work on.
One build for many devices: device/build configuration. Next features and platforms to add. Gaps in HiKey support vs. AOSP build.
- Graphics - YUV support in mesa and hwc.
- WiFi and sensor HAL status and next steps
- New developments with AOSP + the Kernel - With regards to the Google Common Kernel tree and upstream Linux kernel activities related to Android, there are a few topics up for discussion:
- - Updates on HiKey in AOSP
- - EAS in common.git & integration with AOSP userspace
- - New Sync API in 4.6+ kernels, and how it will affects graphics drivers
- AOSP transition to clang - As everyone knows GCC in AOSP has been deprecated. Let’s cover current status, issues and next steps. Let’s also discuss the elephant in the room, building the kernel with clang.
- Out of tree AOSP User space Patches - This is a discussion with the goal of organized action to see forward progress on AOSP user space patches that aren’t in AOSP for whatever reason.
- Android is used in some environments where booting can be frequent and affect the product experience. Do you want to wait for a minute while your car boots? We’ll spend time brainstorming on improving Android boot time.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-400
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-400/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
waa cashir ku sabsan barashada networking
wuxuna anfaca ardayda doneso inay barato madada it
ka faidesi wacan
waxane qalinka u qaada eng mohamed hassan sa'id siicow
kala so xarii:
mobe : 618705208 / 617228342 ama
email : deeqxasan600@gmail.com ama mohameddeekhassan@gmail.com
Introduction to Computer Software, Classification of Computer Software, Computer BIOS, Operating System, Utility Software, Compiler and Interpreter, Linker and Loader, Application Software, Programming Languages
My talk from the Bay area puppetcamp about deploying puppet code to a global network of puppet masters as quickly as possible.
Covers the design and implementation of the TIM Group (and now Yelp) puppetupdate mcollective agent: https://github.com/Yelp/puppetupdate/
This lecture addresses the Use of Signals by the Linux Kernel, and the process behavior upon receiving signals. The popular signals are outlined
Check the other Lectures and courses in
http://Linux4EnbeddedSystems.com
or Follow our Facebook Group at
- Facebook: @LinuxforEmbeddedSystems
Lecturer Profile:
- https://www.linkedin.com/in/ahmedelarabawy
THIS PPT CONTAINS THE DETAILS ABOUT THE VARIOUS LANGUAGE PROCESSORS/LANGUAGE TRANSLATORS- THE COMPILER & THE INTERPRETER, OPERATING SYSTEMS & ITS FUNCTION, PARALLEL & CLOUD COMPUTING
Dynamic Instrumentation- OpenEBS Golang Meetup July 2017OpenEBS
The slides were presented by Jeffry Molanus who is the CTO of OpenEBS in Golang Meetup. OpenEBS is an open source cloud native storage. OpenEBS delivers storage and storage services to containerized environments. OpenEBS allows stateful workloads to be managed more like stateless containers. OpenEBS storage services include: per container (or pod) QoS SLAs, tiering and replica policies across AZs and environments, and predictable and scalable performance.Our vision is simple: let’s let storage and storage services for persistent workloads be so fully integrated into the environment and hence managed automatically that is almost disappears into the background as just yet another infrastructure service that works.
Kiwi PyCon 2011, Wellington, Spotlight on Python by Nick Cave-Lynch, Spotlight on Python.
Covers development and use of a Python-powered system designed for lighting bands in small venues. Covers (among other things): the problems of lighting bands; the development process; the results; lessons learned.
LAS16-400: Mini Conference 3 AOSP (Session 1)Linaro
LAS16-400: Mini Conference 3 AOSP (Session 1)
Speakers: Thomas Gall, Bernhard Rosenkränzer
Date: September 29, 2016
★ Session Description ★
The Android Open Source Project is one community which is strategic to Linaro and it’s members. The purpose of this mini conference is to gather fellow Android engineers together from the community, member companies, and Linaro to discuss engineering activities and improve collaboration across different groups.
Within this mini conference we encourage discussion and presentations to advance engineering topics, forge consensus and educate each other.
The tentative agenda for this mini conference includes :
- Quick introduction
- Filesystems - Between requirements for encryption and standing concerns about degrading performance as an Android file system age, let’s have some discussion involving current data, known issues and towards improvements in this area for Android.
- HAL consolidation - Review current status and discuss next steps to work on.
One build for many devices: device/build configuration. Next features and platforms to add. Gaps in HiKey support vs. AOSP build.
- Graphics - YUV support in mesa and hwc.
- WiFi and sensor HAL status and next steps
- New developments with AOSP + the Kernel - With regards to the Google Common Kernel tree and upstream Linux kernel activities related to Android, there are a few topics up for discussion:
- - Updates on HiKey in AOSP
- - EAS in common.git & integration with AOSP userspace
- - New Sync API in 4.6+ kernels, and how it will affects graphics drivers
- AOSP transition to clang - As everyone knows GCC in AOSP has been deprecated. Let’s cover current status, issues and next steps. Let’s also discuss the elephant in the room, building the kernel with clang.
- Out of tree AOSP User space Patches - This is a discussion with the goal of organized action to see forward progress on AOSP user space patches that aren’t in AOSP for whatever reason.
- Android is used in some environments where booting can be frequent and affect the product experience. Do you want to wait for a minute while your car boots? We’ll spend time brainstorming on improving Android boot time.
★ Resources ★
Etherpad: pad.linaro.org/p/las16-400
Presentations & Videos: http://connect.linaro.org/resource/las16/las16-400/
★ Event Details ★
Linaro Connect Las Vegas 2016 – #LAS16
September 26-30, 2016
http://www.linaro.org
http://connect.linaro.org
waa cashir ku sabsan barashada networking
wuxuna anfaca ardayda doneso inay barato madada it
ka faidesi wacan
waxane qalinka u qaada eng mohamed hassan sa'id siicow
kala so xarii:
mobe : 618705208 / 617228342 ama
email : deeqxasan600@gmail.com ama mohameddeekhassan@gmail.com
Introduction to Computer Software, Classification of Computer Software, Computer BIOS, Operating System, Utility Software, Compiler and Interpreter, Linker and Loader, Application Software, Programming Languages
From Ansible's website: "Ansible is a radically simple IT automation engine that automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT needs."
This introduction is based on ansible official docs, capturing most important information to make it easy to understand Ansible main concepts.
Computer Science - Programming Languages / Translators
This presentation explains the different types of translators and languages of programming such as assembler, compiler, interpreter, bytecode
How to use different programming languages (Java, .NET, Groovy, JavaScript, Python, Ruby) into a scripting component instead of having to re-engineer the code’s behavior through a series of different Mule components.
Exploiting Artificial Intelligence for Empowering Researchers and Faculty, In...Dr. Vinod Kumar Kanvaria
Exploiting Artificial Intelligence for Empowering Researchers and Faculty,
International FDP on Fundamentals of Research in Social Sciences
at Integral University, Lucknow, 06.06.2024
By Dr. Vinod Kumar Kanvaria
How to Build a Module in Odoo 17 Using the Scaffold MethodCeline George
Odoo provides an option for creating a module by using a single line command. By using this command the user can make a whole structure of a module. It is very easy for a beginner to make a module. There is no need to make each file manually. This slide will show how to create a module using the scaffold method.
it describes the bony anatomy including the femoral head , acetabulum, labrum . also discusses the capsule , ligaments . muscle that act on the hip joint and the range of motion are outlined. factors affecting hip joint stability and weight transmission through the joint are summarized.
Strategies for Effective Upskilling is a presentation by Chinwendu Peace in a Your Skill Boost Masterclass organisation by the Excellence Foundation for South Sudan on 08th and 09th June 2024 from 1 PM to 3 PM on each day.
Executive Directors Chat Leveraging AI for Diversity, Equity, and InclusionTechSoup
Let’s explore the intersection of technology and equity in the final session of our DEI series. Discover how AI tools, like ChatGPT, can be used to support and enhance your nonprofit's DEI initiatives. Participants will gain insights into practical AI applications and get tips for leveraging technology to advance their DEI goals.
How to Add Chatter in the odoo 17 ERP ModuleCeline George
In Odoo, the chatter is like a chat tool that helps you work together on records. You can leave notes and track things, making it easier to talk with your team and partners. Inside chatter, all communication history, activity, and changes will be displayed.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Delivering Micro-Credentials in Technical and Vocational Education and TrainingAG2 Design
Explore how micro-credentials are transforming Technical and Vocational Education and Training (TVET) with this comprehensive slide deck. Discover what micro-credentials are, their importance in TVET, the advantages they offer, and the insights from industry experts. Additionally, learn about the top software applications available for creating and managing micro-credentials. This presentation also includes valuable resources and a discussion on the future of these specialised certifications.
For more detailed information on delivering micro-credentials in TVET, visit this https://tvettrainer.com/delivering-micro-credentials-in-tvet/
A review of the growth of the Israel Genealogy Research Association Database Collection for the last 12 months. Our collection is now passed the 3 million mark and still growing. See which archives have contributed the most. See the different types of records we have, and which years have had records added. You can also see what we have for the future.
3. Platform Type
Select Innovation First, then
Natural Language
Allows you to toggle ROBOTC’s programming mode
between the Natural Language (VEX Cortex), VEX Cortex,
and the VEX PIC; enables features and commands
specifically for the selected system
4. VEX Cortex Download Method
Allows you to specify:
1. How programs are downloaded
2. Whether the Cortex looks for a
VEXnet connection when it
starts up
5. Sample Programs
•To generate the Natural Language Function
Library, go to File, Open Sample Programs,
PLTW, PLTWtemplate
6. Function Library
The Function Library will be
populated by all of the Natural
Language commands. These
can be drag-and-dropped into
your program.
Place you cursor over the
commands for more details
about each one.
7. ROBOT Motion
• Commands that
cause the entire
robot to perform a
behavior
8. Setup
• Allows you to
specify what type of
robot configuration
you have from pre-
specified models
(RECBOT,
Swervebot)
9. Movement
• Commands that
allow you to control
individual motors /
servos
10. Special
• Commands that
control the more
unique VEX
Hardware – LED’s
and Flashlights
11. Until
• Commands that
allow you to create
behaviors where
the robot acts “until”
a certain event. For
example,
– Button Press
– Potentiometer Value
12. Wait
• Commands that
wait for an elapsed
amount of time in
seconds or
milliseconds
14. Help Documentation
Additional detail about the Natural Language
commands can be found in the ROBOTC Help
under “Natural Language Functions”
15. Motors and Sensors Setup Menu
Allows you to configure and name all of the motors
and sensors connected to your Cortex.
16. Motors and Sensors Setup Menu
The information in ROBOTC Motors and Sensors Setup
should match the schematic on your project lab sheets.
17. Comments
• Comments are used to make notes for the
human programmers
• // Single line comment – everything after “//” is
ignored by the ROBOTC compiler
18. Comments
• /* Multi-line comment*/ - everything between the
“/*” and “*/” symbols is ignored by the ROBOTC
compiler
20. ROBOTC Practice Program
• Open a Sample Program
Go to File > Open Sample Program >
PLTW>PLTWtemplate
21. ROBOTC Practice Program
1. Rename file and save to student directory
2. Complete heading information
3. Describe task
22. Pseudocode
• Pseudocode is a shorthand notation for
programming which uses
– informal programming structures (if touch1 is pressed…)
– verbal descriptions of code (move forward, stop)
• Emphasis is placed on expressing the behavior
or outcome of each portion of code rather than
on correct syntax (it should be reasonable,
though).
• Your lines of Pseudocode should also be listed
in the same order as they will appear in the
ROBOTC Program
23. ROBOTC Practice Program
• Write pseudocode
turn the motor on for 3
seconds at full power,
then off for 10 seconds.
Then back on for 3
seconds at ½ speed, off
for 2 seconds and
reverse at ½ power for 3
seconds.
24. ROBOTC Practice Program
• Complete Motors and
Sensors Setup
• Notice the #pragma
statements that are
automatically generated
25. ROBOTC Practice Program
• Convert pseudocode to program code using the
Natural Language Function Library to drag and drop
commands.
Defines the “main task” of the robot.
Every program must contain a task
main
All
commands
belonging to
task main
must be in-
between
these curly
braces
26. ROBOTC Practice Program
1. Save Program
2.Connect the Cortex to the Computer (via
USB)
3.Turn on the Cortex
4.Go to Robot > Compile and Download
Program (f5)
5.Run the program – Observe the motor turn
on and off and reverse.
27. ROBOTC Practice Program
Edit the
program to
start when a
pushbutton
switch is
pressed and
stop when a
limit switch is
pressed.
28. ROBOTC Practice Program
You may notice warnings or
errors.
•Make sure you spell motor and sensor names
exactly as defined in Motors and Sensors
setup.
•A ; is needed at the end of each line of code.
•Don’t forget every open parenthesis needs a
closing parenthesis.
•What is wrong with line 31?
29. ROBOTC Debugger
• The ROBOTC Debugger allows you to
view and manipulate all of the values of
your motors, sensors, timers, and
variables.
• Now that we’ve configured the motors
and sensors, let’s view their values using
the ROBOTC Debugger.
30. ROBOTC Debugger
• Make sure your robot is connected to your computer and
turned on, and download the program.
• When the Program Debug Window appears, press the
Start button and make sure the Refresh Rate is set to
Continuous.
31. ROBOTC Debugger
• Open the Sensor Debug window by going
to Robot > Debug Windows > Sensors
32. Sensor Debug Window
• The Sensor Debug window will appear, and display all of
the values of the configured sensors.
0 = released, 1 = pressed
0 = on, 1 = off
33. ROBOTC Practice Program
• Modify your program so that
an LED comes on when the
motor is on, and goes off
when the motor is off.
• Where in the function library
are the LED commands?
• What do you type into the
(digitalPort)?
• Compile and Download the
program.
• Test
34. Resources
• ROBOTC.net: http://www.robotc.net/
– The ROBOTC Forum:
http://www.robotc.net/forums/
• VEX Cortex Video Trainer
– http://www.education.rec.ri.cmu.edu/products/t
eaching_robotc_cortex/index.html
• The FIRE Project:
– http://www.education.rec.ri.cmu.edu/fire/compe
titions/best/
• Robotics Academy
– http://www.education.rec.ri.cmu.edu/content/ve
x/index.htm
35. References
Carnegie Mellon Robotics Academy (2011). VEX Cortex
Video Trainer. Retrieved from
http://www.education.rec.ri.cmu.edu/products/teaching_r
obotc_cortex/index.html
Editor's Notes
We will use Natural Language for this class.
“ Download Using VEXnet or USB” is always the safe choice, but the Cortex will look for a VEXnet connection for up to10 seconds before running code. Unless you upgrade your GTT kit you will always use the Download using USB only.
Students must get used to using the PLTW template for all of their programs.
We won’t use this in GTT class.
Will not use in GTT curriculum.
GTT kits do not include Servo motors – so make sure students do not use that option.
Flashlights not in GTT kits.
See additional slides in Connecting VEX to ROBOTC.ppt if necessary. Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Single line and multi-line comments give important information to the programmer and others who read the program and need to understand the logic. The program, ROBOTC, totally ignores the comments as long as the symbols are present.
Teacher should create a VEX test bed for demonstration purposes. Student teams may also have a VEX test bed to work with. Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Teacher Notes: This slide is meant to be a class activity, for students to actually get some guided experience with the ROBOTC interface, ROBOTC Commands, Cortex system, etc. The steps should be: Open ROBOTC Verify the Platform Type is set to Natural Language and the Download using USB option is on Open the Sample Program, PLTW Folder, PLTWtemplate Demonstrate, then have students connect a motor to the Cortex (you may want to add an axle, gear and standoff to help see what’s happening) Remind students if they have a 2 wire motor they can connect to Ports 1 and 10 only.
Explain the different pieces of the template. Students need to get in the habit of completing the template in this order: Save As and Rename to their own directory immediately with the name of the project. If necessary save to each individual students directory within the group in case the primary computer engineer is absent from class. Complete heading information – Teachers may alter this to meet their specifications. Students should describe the task in their own words. Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Additional Details: Pseudocode is used to outline a program before translating it into proper syntax. Helps in the initial planning of a program, by creating the logical framework and sequence of the code. An additional benefit is that it can be translated into different programming languages and is therefore somewhat universal Introduction to ROBOTC GTT - AR Unit 2 – Lesson 2.3 – Automated Systems
For this demonstration: RightMotor – port2 LimitSwitch – dgtl1 BumpSwitch – dgtl2 LED – dgtl12 Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Connect the Cortex to the Computer (via USB) Turn on the Cortex Go to Robot > Compile and Download Program Run the program – Observe the motor turn on and off and reverse. Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Edit the program to start when a pushbutton switch is pressed and stop when a limit switch is pressed. Compile and Download the Program Run the Program – observe the motor starting and stopping based on pressing the switches. Introduction to ROBOTC GTT - AR Unit 2 – Lesson 2.3 – Automated Systems
Encourage students to read the error descriptions for suggestions on how to fix their program. Once errors are fixed. Compile, download and run the program again. Line 31 – closing parenthesis is in wrong place – goes after the -63) Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Have students try to solve this without showing the sample solution first. Presentation Name Course Name Unit # – Lesson #.# – Lesson Name
Trainer Notes: It’s recommended that you visit the different pages and show trainees the materials that are there.