This document provides an overview of ROS and Gazebo for robot simulation. It introduces ROS as a framework for robot software development that encourages code reuse. Key ROS concepts covered include nodes, topics, services, and packages. The document demonstrates creating simple ROS packages and nodes that publish, subscribe and use custom messages. Gazebo is introduced as a 3D physics simulator for robot control and environment simulation. Example demonstrations are provided on using Gazebo and ROS for SLAM with the PR2 robot in Rviz. Resources for further learning about ROS and Gazebo are also listed.
The presentation is the result of my investigating if there is an open source development framework that can manage complex robotic systems. If so,should it be recommended to be used in advanced high school/undergraduate levels.
Modeling and Control Robot Arm using Gazebo, MoveIt!, ros_controlByeongKyu Ahn
본 문서는 8축 로봇팔을 Gazebo, ROS, MovieIt을 이용한 시뮬레이션 과정에 대한 것으로 제2회 오로카 세미나(http://cafe.naver.com/openrt.cafe)에서 발표되었습니다.
This document represent working process for simulation 8-dof robot arm using Gazebo, ROS, MoveIt. And, this document presented on 2nd OROCA seminar in KOREA.
My slides for the Hands-on part of the Robotic Vision Summer School 2015 in Kioloa, Australia.
This is part of the robotics workshop, aiming to teach the participants how to program the turtlebot .
제목 : ROS with Docker
이름 : Sejin Park
소속 : 아두베리스핀 (http://arduberryspin.github.io)
아두이노와 라즈베리파이를 활용한 IOT 소모임이었던 아두베리스핀이 ROS 스터디를 시작하면서 오로카 세미나로 예습하고 도커로 환경을구축하면서 겪었던 일들을 소개하며 거인의 어깨에 서서 즐거운 로봇모임으로 성장해나가는 이야기를소개합니다.
제4회 오픈 로보틱스세미나
주 관: 한국로봇산업진흥원 & 오로카 (공동주관)
일 시: 2015년 11월 7일 토요일
Why I like PHPStorm
Advantages of Using Docker
Client, Docker Host, Registry
Docker Usage
Solr Docker File
Every Day Docker Commands
Docker Search
One Line Scripts
Portainer
Kinematic
Docker Compose
Grafana
Coding style guide
PHPCS/MD
Documentation Rules
Xdebug
Postman
The presentation is the result of my investigating if there is an open source development framework that can manage complex robotic systems. If so,should it be recommended to be used in advanced high school/undergraduate levels.
Modeling and Control Robot Arm using Gazebo, MoveIt!, ros_controlByeongKyu Ahn
본 문서는 8축 로봇팔을 Gazebo, ROS, MovieIt을 이용한 시뮬레이션 과정에 대한 것으로 제2회 오로카 세미나(http://cafe.naver.com/openrt.cafe)에서 발표되었습니다.
This document represent working process for simulation 8-dof robot arm using Gazebo, ROS, MoveIt. And, this document presented on 2nd OROCA seminar in KOREA.
My slides for the Hands-on part of the Robotic Vision Summer School 2015 in Kioloa, Australia.
This is part of the robotics workshop, aiming to teach the participants how to program the turtlebot .
제목 : ROS with Docker
이름 : Sejin Park
소속 : 아두베리스핀 (http://arduberryspin.github.io)
아두이노와 라즈베리파이를 활용한 IOT 소모임이었던 아두베리스핀이 ROS 스터디를 시작하면서 오로카 세미나로 예습하고 도커로 환경을구축하면서 겪었던 일들을 소개하며 거인의 어깨에 서서 즐거운 로봇모임으로 성장해나가는 이야기를소개합니다.
제4회 오픈 로보틱스세미나
주 관: 한국로봇산업진흥원 & 오로카 (공동주관)
일 시: 2015년 11월 7일 토요일
Why I like PHPStorm
Advantages of Using Docker
Client, Docker Host, Registry
Docker Usage
Solr Docker File
Every Day Docker Commands
Docker Search
One Line Scripts
Portainer
Kinematic
Docker Compose
Grafana
Coding style guide
PHPCS/MD
Documentation Rules
Xdebug
Postman
Most developers start adopting Docker by integrating it with their development environment. Unfortunately development environments are nuanced. Using Docker to automate and isolate development environments is rewarding, but you'll need to keep a few things in mind when designing that integration.
Deep dark-side of git: How git works internallySeongJae Park
Describe how git works internally using small and perfect plumbing commands.
The slide have been used at GDG DevFest 2014 and SOSCON 2014.
The slide can be updated later. And, the latest version would always be provided from this page always.
JDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin StożekPROIDEA
Kubernetes helps us run our applications across multiple nodes using the standardized, declarative way. While we don’t need to think about where our applications are run physically, we still want to have some insights into how they behave. But we are no longer allowed to log into a specific node and just "read the logs" as it does not make much sense. We need to have a proper, automated solution. Kubernetes allows us to use different techniques to achieve this goal. Let's take a look at these techniques and their pros and cons. Once we have those logs, from multiple different applications where each logs things differently – what’s next? This talk also will provide real-life examples of how LogSense works to make sense of all Kubernetes logs, regardless of the format or structure.
Work shop - an introduction to the docker ecosystemJoão Pedro Harbs
I ministered a Docker workshop at FliSoL (Latin American Free Software Festival), 2019 edition, hosted by the Federal Institute of Education, Science and Technology of the State of São Paulo (IFSP-BRT) on 27/04/2019, where I gave an introduction. what Docker / Container is, how it came about, some of its uses, and a walkthrough from installation to uploading your first application running in a container.
Talk given on BalCCon 2013 by Vlatko Kosturjak: Wonderful world of (distributed) SCM or VCS. Ripping and extracting useful info from CVS, Subversion (SVN) and GIT repositories publicly exposed on the web.
Most developers start adopting Docker by integrating it with their development environment. Unfortunately development environments are nuanced. Using Docker to automate and isolate development environments is rewarding, but you'll need to keep a few things in mind when designing that integration.
Deep dark-side of git: How git works internallySeongJae Park
Describe how git works internally using small and perfect plumbing commands.
The slide have been used at GDG DevFest 2014 and SOSCON 2014.
The slide can be updated later. And, the latest version would always be provided from this page always.
JDO 2019: Kubernetes logging techniques with a touch of LogSense - Marcin StożekPROIDEA
Kubernetes helps us run our applications across multiple nodes using the standardized, declarative way. While we don’t need to think about where our applications are run physically, we still want to have some insights into how they behave. But we are no longer allowed to log into a specific node and just "read the logs" as it does not make much sense. We need to have a proper, automated solution. Kubernetes allows us to use different techniques to achieve this goal. Let's take a look at these techniques and their pros and cons. Once we have those logs, from multiple different applications where each logs things differently – what’s next? This talk also will provide real-life examples of how LogSense works to make sense of all Kubernetes logs, regardless of the format or structure.
Work shop - an introduction to the docker ecosystemJoão Pedro Harbs
I ministered a Docker workshop at FliSoL (Latin American Free Software Festival), 2019 edition, hosted by the Federal Institute of Education, Science and Technology of the State of São Paulo (IFSP-BRT) on 27/04/2019, where I gave an introduction. what Docker / Container is, how it came about, some of its uses, and a walkthrough from installation to uploading your first application running in a container.
Talk given on BalCCon 2013 by Vlatko Kosturjak: Wonderful world of (distributed) SCM or VCS. Ripping and extracting useful info from CVS, Subversion (SVN) and GIT repositories publicly exposed on the web.
Whether you're a seasoned Java developer looking to start hacking on EE6 or you just wrote your first line of Ruby yesterday, the cloud is perfect for developing apps in any modern language or framework. Join us for an action-packed hour of power where we'll show you how to deploy an application written in a language of your choice - Java, Ruby, PHP, Perl or Python, with a framework of your choice - EE6, CDI, Seam, Zend, Rails, Sinatra, PerlDancer or Django to the OpenShift PaaS in just minutes. Use the following promotional code when signing up to try out OpenShift: CODEMOTION
Building Social IRC Bots with Node.js and MongoDBMongoDB
Improve your team's productivity and encourage participation with social IRC bots! Find out how to create scoreboards, encourage positive communication by awarding points, and bring your bot to life using OpenShift, Red Hat's free auto-scaling Platform as a Service. We'll power our bot using an OpenShift "gear", then add a MongoDB for memory, and teach it to speak using a javascript-based IRC library for node.js.
As developers, we are blessed with a huge variety of tools to help us in our daily jobs. One of the most popular ones that has shown up over the last few years is Docker. How does one go about getting started with Docker? Why should you invest your time in this new technology? What can you do with Docker? Let's find out!
Ever wondered about the new Cloud offerings out there? What is a PaaS? What is this thing called OpenShift?
Whether your business is running on applications based on Java EE6, PHP or Ruby, the cloud is turning out to be the perfect environment for developing your business. There are plenty of clouds and platform-as-a-services to choose from, but where to start?
Join us for an action-packed hour of power where we'll show you how to deploy your existing application written in the language of your choice - Java, Ruby, PHP, Perl or Python, with the framework of your choice - EE6, CDI, Seam, Spring, Zend, Cake, Rails, Sinatra, PerlDancer or Django to the OpenShift PaaS in just minutes. All this and without having to rewrite your app to get it to work the way the cloud provider thinks your app should work.
You can have your business applications running in the cloud on OpenShift Express in seconds, while also making use of the web browser do the heavy-lifting of provisioning clusters, deploying, monitoring and auto-scaling apps in OpenShift Flex.
If you want to learn about OpenShift PaaS and see how investing 45 mins of your time can change everything you thought you knew about putting your business applications in the cloud, this session is for you!
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
91mobiles recently conducted a Smart TV Buyer Insights Survey in which we asked over 3,000 respondents about the TV they own, aspects they look at on a new TV, and their TV buying preferences.
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
The IoT and OT threat landscape report has been prepared by the Threat Research Team at Sectrio using data from Sectrio, cyber threat intelligence farming facilities spread across over 85 cities around the world. In addition, Sectrio also runs AI-based advanced threat and payload engagement facilities that serve as sinks to attract and engage sophisticated threat actors, and newer malware including new variants and latent threats that are at an earlier stage of development.
The latest edition of the OT/ICS and IoT security Threat Landscape Report 2024 also covers:
State of global ICS asset and network exposure
Sectoral targets and attacks as well as the cost of ransom
Global APT activity, AI usage, actor and tactic profiles, and implications
Rise in volumes of AI-powered cyberattacks
Major cyber events in 2024
Malware and malicious payload trends
Cyberattack types and targets
Vulnerability exploit attempts on CVEs
Attacks on counties – USA
Expansion of bot farms – how, where, and why
In-depth analysis of the cyber threat landscape across North America, South America, Europe, APAC, and the Middle East
Why are attacks on smart factories rising?
Cyber risk predictions
Axis of attacks – Europe
Systemic attacks in the Middle East
Download the full report from here:
https://sectrio.com/resources/ot-threat-landscape-reports/sectrio-releases-ot-ics-and-iot-security-threat-landscape-report-2024/
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
6. What is ROS ?
6
http://answers.ros.org/question/12230/what-is-ros-exactly-middleware-framework-operating-system/#18055
• ROS is acronym for Robot OS, but it is not a
traditional OS like Windows, Ubuntu or Mac OS
7. What is ROS ?
7
• Before we move on, we should clarify something
• Robot software = Distributed computing system
Decision Maker
Object
Recognition
Object GraspingNavigation
8. What is ROS ?
8
• ROS is a set of tools which enables
– Easy construction of distributed computing systems
(Programs can be individually designed and easily connected at
runtime)
– Code reuse
– Configuring, starting, introspecting, debugging, visualizing, logging,
testing, and stopping distributed computing systems
9. Why is ROS preferred ?
9
• It encourages users not to reinvent the wheel
10. Why is ROS preferred ?
10
• Many open-sourced libraries
– SLAM (OpenSLAM)
– Real-time control(OROCOS)
– Path Planning (Openrave)
– Vision (OpenCV, PCL)
– 3D Simulator (Gazebo)
– 3D Visualizer (Rviz)
11. Why is ROS preferred ?
11
• Package can be written in multiple programming languages
– C++
– Python
– Lisp
• And many more experimental support
– C#, Go, Haskell, Java, Node.js, Lua, R, Ruby
– http://wiki.ros.org/Client%20Libraries
12. Can ROS be used on different robot?
12
• Of course!
• Check all robots using ROS - http://wiki.ros.org/Robots
https://vimeo.com/146183080
22. How do ROS node communicate?
• ROS master as a message hub?
– What if there are many nodes?
22
23. How do ROS node communicate?
• Let nodes communicates with each other directly
– Topic, Service, ActionLib
• If ROS does not exists
– Socket
– Shared memory
– We have to take care of these tedious work.
23
24. ROS Topic
• Publisher/Subscriber mechanism (topic == bucket)
24
Perception
Object
Recognition
Semantic Map
Camera data
Recognition result
25. rostopic
• 寫一個publisher (一直丟字串到topic_name這個topic)
– catkin_create_pkg coscup_2_topic rospy std_msgs
cd coscup_2_topic
vim src/publisher.py
chmod +x src/publisher.py
cd ../..
catkin_make
source devel/setup.bash
roscore
rosrun coscup_2_topic publisher.py
rqt_graph
rostopic echo topic_name
rostopic list
rostopic list | grep topic
25
30. Define our own msg for topic
• 創建一個只有一個int的msg
– cd ~/catkin_ws/src
cd coscup_2_topic
mkdir msg
vim msg/Num.msg
vim package.xml
vim CMakeLists.txt
cd ../..
catkin_make
source devel/setup.bash
rosmsg show coscup_2_topic/Num
30
39. ROS Service
• 建立一個自己的srv格式
– cd ~/catkin_ws/src
catkin_create_pkg coscup_3_service rospy std_msgs
cd coscup_3_service
mkdir srv
vim srv/AddTwoInts.srv
vim package.xml
vim CMakeLists.txt
cd ../..
catkin_make
source devel/setup.bash
rossrv show coscup_3_service/AddTwoInts
39
42. ROS Service
• 寫一個server
– cd coscup_3_service
vim src/add_two_ints_server.py
cd ../..
source devel/setup.bash
chmod +x src/add_two_ints_server.py
rosrun coscup_3_service add_two_ints_server.py
42
43. ROS Service
• 寫一個client,送出request給server
– cd coscup_3_service
vim src/add_two_ints_client.py
chmod +x src/add_two_ints_client.py
run coscup_3_service add_two_ints_client.py 5 6
43
44. Rviz
• An important tool for data visualization
• 先啟動你們的Rviz
– $ sudo apt-get install ros-indigo-rviz-*
– $ roscore
– $ rviz
• Will be revisited when we use Gazebo
44
45. Find out more on ROS Cheat Sheet
• https://github.com/ros/cheatsheet 45
57. Map representation
• Given sensor data zt and the poses of the sensor xt,
estimate the map
• 推導就不細講了
– http://ais.informatik.uni-
freiburg.de/teaching/ws12/mapping/pdf/slam11-gridmaps-4.pdf
57
58. Resources you can leverage
• ROS wiki
http://wiki.ros.org/
• ROS Answers
http://answers.ros.org/questions/
• Gazebo Answers
http://answers.gazebosim.org/questions/
• ROS Taipei 中文資源整理
https://hackpad.com/-ROS-Blog--lnDeWhHXH4T
58