Plug-in Based Software Architecture for RoboticsOutline ● What is plugin architecture? ● Why use plugin architecture? ● Designing a simplified plugin architecture ● Library used in robotics to implement plugin based system ○ Pluginlib ● Case study study for plugin architecture - MoveIt ● Limitations ● Summary 2Introduction •Abi Sivaraman •Robotics Engineer at PickNik Robotics •I work with robotic arms •MoveIt Maintainer 3What is plugin plugin architecture? Software Design Pattern that allows for developers to add functionality to a larger system without having to alter the source code of the system itself. Plug-ins are self-contained0 码力 | 75 页 | 2.40 MB | 6 月前3
High-Performance Cross-Platform Architecture: C++20 Innovationsembedded software • Started using C++ in 1995 • First cross-platform project in 1994Cross-Platform Architecture Goals • Take advantage of all platforms • Focus on the compiler • Minimize boilerplate and unnecessary requiring implementations that differ depending upon the target machine architecture. • Features may be hardware: CPU architecture, SIMD instruction set, DMA controller, GPIO module, etc. • Features0 码力 | 75 页 | 581.83 KB | 6 月前3
Back To Basics Functionsof the first things programmers learn, granting you the ultimate power to 'reuse' code and build modular programs. In this talk, we are going to provide an overview of functions from the start to the end think about them. ○ Let’s explore further! 23Functions An Abstraction for Writing Reusable and Modular Code At the very minimum -- “a command that returns a value” 24General Purpose of a Function in refactor the code to make it a little cleaner. ○ This is our motivation for functions as well...modular pieces of code so we don’t have to repeat ourselves! 46 Exercise: Try removing the loop and using0 码力 | 123 页 | 7.26 MB | 6 月前3
Building Safe and Reliable Surgical Robotics with C++Vulnerabilities What can we do then? 24 Explore Tooling Processes Architecture CultureArchitecture 25Control and reduce risk Risk Driven Architecture 26 SW System/Item (Class C) SW Item X (Class C) SW Reduce Coupling & Enhance CohesionSafety Critical Path vs Non-Real Time Domain Risk Driven Architecture 27 SW System/Item (Class C) SW Item X (Class C) SW Item Y (Class B) SW Item Z (Class Compliance and possibly being safety certified (3rd party vendors), ... ❖ What can help: ➢ Modular and decoupled architecture, Frequent tech debt reviews, Security/Compliance tracking, Established testing framework0 码力 | 71 页 | 4.02 MB | 6 月前3
Composing Ancient Mathematical Knowledge Into Powerful Bit-fiddlingFinite Field Exponentiation (Modular Exponentiation) ● Core operation in public-key cryptography (RSA, Diffie-Hellman) ● Can be implemented by repeated application of modular multiplication. ● Enables0 码力 | 73 页 | 947.99 KB | 6 月前3
Exceptionally Bad: The Story on the Misuse of Exceptions and How to Do Bettertransaction is wiped Needs local handling to mitigate transaction wiping Pattern : External libraries, modular functionality expresses all problems via an Exception 38 Bloomberg Exceptional Pass the buckSome transaction wiped Needs local handling to mitigate transaction wiping Pattern : External libraries, modular functionality expresses all problems via an exception Conclusion : Prefer to use exceptions only0 码力 | 85 页 | 2.32 MB | 6 月前3
Conan 2.0 Documentation2 Decentralized package manager Conan is a decentralized package manager with a client-server architecture. This means that clients can fetch packages from, as well as upload packages to, different servers arbitrary number of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same https://github.com/conan-io/tribe/blob/main/design/027-package_types.md 2.3 New public Python API A new modular Python API is made available, public and documented. This is a real API, with building blocks that0 码力 | 652 页 | 4.00 MB | 1 年前3
Conan 2.1 Documentation2 Decentralized package manager Conan is a decentralized package manager with a client-server architecture. This means that clients can fetch packages from, as well as upload packages to, different servers arbitrary number of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same https://github.com/conan-io/tribe/blob/main/design/027-package_types.md 2.3 New public Python API A new modular Python API is made available, public and documented. This is a real API, with building blocks that0 码力 | 694 页 | 4.13 MB | 1 年前3
Leveraging a Functional Approach for More Testable and Maintainable ROS 2 Codeparameters at run-time to change its behavior ● Each node should be responsible for a single, modular purpose, (e.g. controlling the wheel motors or publishing the sensor data from a laser range-finder)What parameters at run-time to change its behavior ● Each node should be responsible for a single, modular purpose, (e.g. controlling the wheel motors or publishing the sensor data from a laser range-finder)0 码力 | 200 页 | 1.77 MB | 6 月前3
Conan 2.3 Documentation2 Decentralized package manager Conan is a decentralized package manager with a client-server architecture. This means that clients can fetch packages from, as well as upload packages to, different servers arbitrary number of binaries, one for each different platform and configuration: operating system, architecture, compiler, build type, etc. These binaries can be created and uploaded to a server with the same https://github.com/conan-io/tribe/blob/main/design/027-package_types.md 2.3 New public Python API A new modular Python API is made available, public and documented. This is a real API, with building blocks that0 码力 | 748 页 | 4.65 MB | 1 年前3
共 138 条
- 1
- 2
- 3
- 4
- 5
- 6
- 14
相关搜索词
PluginBasedSoftwareArchitectureforRoboticsHighPerformanceCrossPlatformC++20InnovationsBackToBasicsFunctionsBuildingSafeandReliableSurgicalwithComposingAncientMathematicalKnowledgeIntoPowerfulBitfiddlingExceptionallyBadTheStoryontheMisuseofExceptionsHowtoDoBetterConan2.0Documentation2.1LeveragingFunctionalApproachMoreTestableMaintainableROSCode2.3













