Robot operating system basics

ROS, or the Robot Operating System, is not an operating system in the traditional sense. It is a software framework and ecosystem that helps engineers build modular robot applications. ROS became popular because robotics systems are naturally complex, and ROS provides a common structure for connecting sensors, algorithms, visualization tools, and control logic.

Why ROS Exists

A real robot is made of many components: camera drivers, motor controllers, localization, mapping, planning, perception, logging, simulation, and more. Building all of that from scratch in a tightly coupled application quickly becomes unmanageable. ROS encourages a distributed architecture where components communicate through well-defined interfaces.

Core Concepts

Nodes

A node is a running process that performs one specific task. For example, one node may read LiDAR data, another may estimate odometry, and another may visualize the robot state.

Topics

Topics support asynchronous publish/subscribe communication. A LiDAR node may publish scan data, and multiple subscribers may consume it at the same time.

Services

Services are request/response interactions. They are useful for operations such as resetting a subsystem or requesting a map snapshot.

Actions

Actions are useful for longer-running tasks that need progress feedback, such as navigation to a goal.

TF

TF manages coordinate transforms between frames such as map, odom, base_link, and camera frames. Without TF, multi-sensor robot systems become extremely difficult to reason about.

A Simple Example

Imagine a mobile robot using ROS:

  1. A camera node publishes images.
  2. A LiDAR node publishes laser scans.
  3. An odometry node estimates motion.
  4. A SLAM node subscribes to scans and odometry to build a map.
  5. A planner uses the map and goal position to generate a path.
  6. A controller node sends wheel commands.

Each part can be inspected, restarted, replaced, or improved independently. That modularity is one of ROS's biggest strengths.

Tools Engineers Use Often

  • RViz for visualization
  • rosbag for recording and replaying data
  • rqt tools for debugging graphs and parameters
  • Gazebo or other simulators for testing

ROS 1 vs ROS 2

ROS 2 improves communication, security, real-time support, and multi-machine deployment by building on DDS. For new commercial or production-oriented systems, ROS 2 is often the better long-term choice, though ROS 1 remains important historically and in many research environments.

Final Thoughts

ROS matters because it reduces integration cost. It does not solve robotics for you, but it gives you a language and structure for connecting the parts. That is why it remains one of the most influential frameworks in modern robotics.

Ibm doors for requirements engineers

IBM DOORS is a requirements management tool widely used in industries where traceability, documentation, and process discipline matter, such as automotive, aerospace, rail, and safety-critical systems. For many software engineers, it feels very different from the more informal workflow of modern application development, but it exists for an important reason.

Why Requirements Tools Matter

In large engineering projects, requirements are not just notes. They must be reviewed, versioned, linked, and verified. A change in one requirement can affect architecture, testing, compliance, and delivery plans. Tools like DOORS help teams manage that complexity more systematically.

What DOORS Is Used For

  • capturing system and software requirements,
  • organizing requirements into modules,
  • creating links between parent and child requirements,
  • supporting traceability from requirement to test case,
  • tracking reviews and controlled changes.

A Practical Example

Imagine an automotive braking subsystem. A system-level requirement may define a safety response time. That requirement can be linked to lower-level software requirements, design documents, test cases, and validation evidence. If the parent requirement changes, teams can quickly identify what downstream artifacts are affected.

Why Engineers Often Struggle with It

DOORS is powerful, but it can feel heavy if a team is used to moving fast without strong documentation rules. The tool works best when the project genuinely needs structure, auditability, and long-lived engineering records.

Good Practices

  • Write requirements that are specific and testable.
  • Avoid combining several ideas in one requirement.
  • Keep traceability meaningful rather than creating links only for process optics.
  • Review change impact carefully before updating baselines.

Final Thoughts

IBM DOORS is not exciting in the same way as AI or cloud platforms, but it is important in serious engineering environments. If you understand why traceability matters, you understand why tools like DOORS continue to play a major role in large technical programs.

Occupancy grid maps in practice

Occupancy grid maps are one of the most practical map representations in robotics. They divide space into cells and estimate whether each cell is free, occupied, or still unknown. That sounds simple, but the representation is powerful because it turns noisy sensor measurements into a structure that planning, localization, and obstacle reasoning can use directly.

Occupancy grids remain popular because they are conceptually clear, easy to update incrementally, and compatible with a wide range of sensors and algorithms.

The basic idea

Imagine covering the world with a 2D chessboard. Every square stores the current belief about whether that patch of space contains an obstacle. If the robot sees repeated evidence that a cell is blocked, the occupancy probability rises. If the robot repeatedly observes that a cell is clear, the probability falls. Cells that have not been observed remain unknown.

This representation is attractive because it makes uncertainty explicit. The map does not pretend to know the world perfectly. It stores a belief that can change as new measurements arrive.

Why occupancy grids matter

Occupancy grids are useful because they bridge sensing and action. Raw LiDAR or sonar readings are hard for a planner to use directly. A grid map converts those measurements into a spatial memory that answers practical questions such as:

  • Which nearby cells are clearly free?
  • Where are likely obstacles?
  • Which regions remain unknown or poorly observed?
  • Is there a safe corridor from the current pose to the goal?

That makes occupancy grids especially valuable in mobile robotics, autonomous navigation, and obstacle avoidance.

How sensor updates work

The most common formulation updates each cell probabilistically from incoming sensor data. Laser scans, depth sensors, or range observations are traced into the map:

  • cells along the beam are often reinforced as free
  • the end point is reinforced as occupied if an obstacle was detected
  • cells beyond the obstacle remain unknown because the sensor did not see through it

Many systems use a log-odds update because it makes repeated Bayesian updates efficient. Instead of storing raw probabilities directly, the map stores a transformed value that can be incremented or decremented more easily as evidence accumulates.

for each laser beam:
    mark traversed cells as more likely free
    mark impact cell as more likely occupied
    keep unobserved cells unknown

That small pattern is the heart of many practical grid-mapping systems.

Resolution is a real engineering tradeoff

Occupancy grids look straightforward until you choose the cell size. Resolution affects almost everything:

  • finer cells capture more detail
  • coarser cells reduce memory and compute load
  • planning cost often scales badly as resolution becomes too fine
  • small errors and sensor noise can become exaggerated at very high resolution

MRPT’s occupancy-grid notes highlight this tradeoff clearly: many operations scale with the square of the inverse resolution. That means halving the cell size can increase computational cost dramatically.

So the “best” resolution is not the finest possible one. It is the one that matches the robot size, sensor noise, and planning needs.

How grids support planning

Once the map stores free and occupied cells, a planner can search for safe paths. The simplest approach is to inflate obstacles by the robot radius, then run a path-planning algorithm over the remaining free cells. This is why occupancy grids are so practical: they convert navigation into a structured search problem.

MRPT’s planning examples show this nicely. A circular robot can plan over a 2D occupancy grid after obstacle growth, using value iteration or similar methods to find a path toward the goal.

This works well for many indoor or moderately structured environments, even if the final motion planner later refines the path more smoothly.

Where occupancy grids are strong

  • simple and intuitive representation
  • works naturally with range sensors
  • supports incremental updates over time
  • easy to use for planning and collision checking
  • keeps uncertainty visible through free, occupied, and unknown space

Where occupancy grids become limited

Despite their usefulness, occupancy grids also have limitations:

  • large maps consume significant memory
  • fixed resolution may waste detail in some areas and lose detail in others
  • 2D grids do not represent height or overhangs well
  • dynamic environments require frequent updates and clearing
  • the map alone does not explain object identity or semantics

These limitations are why teams sometimes move to hierarchical structures such as octomaps for 3D, or add semantic layers on top of the occupancy representation.

Occupancy grids in modern autonomous systems

Occupancy grids are still relevant in modern autonomy stacks. Autoware’s perception and planning documentation explicitly includes occupancy-map information as an input for planning. That makes sense: even if object detectors and lane models are available, a planner still benefits from a spatial representation of drivable, blocked, and occluded areas.

In other words, occupancy grids are not outdated. They remain one of the cleanest ways to represent navigable space under uncertainty.

A practical checklist

If I were reviewing a grid-mapping system, I would look at:

  • cell resolution and its effect on runtime
  • sensor model assumptions used for free and occupied updates
  • how unknown space is handled by planning
  • whether dynamic obstacles are cleared correctly
  • how obstacle inflation matches robot geometry
  • whether 2D is sufficient or a 3D map is required

These questions usually matter more than the visualization itself.

Conclusion

Occupancy grid maps remain a foundational tool in robotics because they turn uncertain sensor data into a representation that planners and navigation systems can actually use. Their strength lies in simplicity, probabilistic updates, and close compatibility with path planning. Their weaknesses appear when environments become very large, highly dynamic, or deeply three-dimensional. But as a practical engineering tool, occupancy grids still matter a great deal.

References

Autonomous navigation basics

Autonomous navigation is the ability of a robot or vehicle to move through an environment safely and purposefully without continuous human control. In practice, that means much more than following a path. A useful autonomous system has to understand where it is, what surrounds it, where it should go, and how to move there safely.

The Core Pipeline

Although implementations differ, most navigation systems can be understood through a few major blocks:

  • Perception: sensing the environment using cameras, LiDAR, radar, ultrasound, GPS, IMU, or wheel encoders.
  • Localization: estimating the current position and orientation of the robot.
  • Mapping: building or using a representation of the world.
  • Planning: deciding where to go and how to get there.
  • Control: generating steering, throttle, brake, or wheel commands to follow a trajectory.

Perception

No navigation system can work well without useful sensor input. Cameras provide rich visual information, LiDAR provides accurate geometric structure, radar performs well in difficult weather, and IMU sensors help with short-term motion tracking. In many real systems, sensor fusion is essential because each sensor has strengths and weaknesses.

Localization

A robot must know where it is before it can move intelligently. Localization may rely on GPS outdoors, but in indoor or high-precision environments it often depends on SLAM, particle filters, Kalman filters, or map-based matching. Even a strong planner becomes useless if the position estimate drifts too far from reality.

Mapping

Some robots navigate in a prebuilt map, while others build a map online. Common map types include occupancy grids, feature maps, lane maps, topological graphs, and semantic maps. The right representation depends on the environment and task. A warehouse robot does not need the same map structure as a self-driving car in urban traffic.

Planning

Planning can be divided into layers:

  • Global planning: choose a route from start to destination.
  • Behavior planning: decide actions such as stopping, yielding, or changing lanes.
  • Local planning: generate a feasible short-horizon trajectory around obstacles.

Algorithms may include A*, Dijkstra, RRT, lattice planners, optimization-based methods, or behavior rules depending on the system.

Control

Once a trajectory exists, the controller turns it into actual motion. Common controllers include PID, pure pursuit, Stanley, LQR, and MPC. The choice depends on dynamics, accuracy requirements, and computational constraints.

A Real Example

Consider an autonomous delivery robot in a campus environment:

  1. It uses GNSS and IMU outdoors, plus LiDAR for obstacle detection.
  2. It localizes against a map of pathways and building entrances.
  3. It plans a global route to the target building.
  4. It adjusts locally to avoid pedestrians and parked bicycles.
  5. Its controller tracks the resulting path while keeping speed smooth and safe.

Why Autonomous Navigation Is Hard

  • Sensor noise and drift are unavoidable.
  • The world changes: people move, objects appear, weather varies.
  • Planning must balance safety, comfort, efficiency, and real-time constraints.
  • The full system only works if the modules interact reliably.

Final Thoughts

Autonomous navigation is not a single algorithm. It is a system problem that combines sensing, estimation, decision-making, and control. Understanding the interfaces between those layers is what turns theory into a working robot or vehicle.

Rtab-map and the kidnapped robot problem

RTAB-Map is a widely used SLAM framework in robotics. Its name stands for Real-Time Appearance-Based Mapping, and it is designed to help robots build a map, estimate their own position, and recognize places they have seen before. One of the most interesting situations where RTAB-Map becomes especially useful is the kidnapped robot problem.

What Is the Kidnapped Robot Problem?

The kidnapped robot problem describes a situation where a robot is suddenly moved to an unknown location without knowing it. Imagine a robot navigating in a hallway. If someone picks it up, carries it to another room, and puts it down again, its internal state may still assume it is near the hallway. From the robot's point of view, its belief about position is now wrong.

This problem is important because real robots often face sensor failure, wheel slip, bad odometry, or abrupt environmental changes. A localization system must therefore do more than track motion smoothly. It also needs a way to recover when its estimate becomes inconsistent with reality.

How RTAB-Map Helps

RTAB-Map combines visual features, odometry, graph-based optimization, and loop closure detection. Instead of relying only on dead reckoning, it stores visual memories of places and compares the current scene with previously observed locations.

When the robot re-enters a known area, RTAB-Map can detect that match and add a loop closure constraint to its graph. That reduces accumulated drift and helps correct the pose estimate.

Main Components

  • Sensors: RGB-D cameras, stereo cameras, LiDAR, or other depth-capable sources.
  • Odometry: short-term motion estimate from wheel encoders, IMU, or visual odometry.
  • Memory management: keeps recent and useful observations while controlling computational cost.
  • Loop closure detection: recognizes previously visited places.
  • Graph optimization: refines the map and trajectory after new constraints are added.

A Practical Example

Suppose a mobile robot is mapping an office:

  1. It starts in corridor A and builds a map while moving.
  2. Odometry gradually accumulates small errors.
  3. The robot is lifted and moved to meeting room B.
  4. Its pose estimate is now wrong because odometry alone cannot explain the jump.
  5. Once the robot observes familiar visual landmarks or geometric structure, RTAB-Map can relocalize it against the existing map.
  6. The graph is updated, and navigation can continue from a corrected pose.

Why Loop Closure Matters

Without loop closure, the robot's trajectory drifts over time. In a large environment that drift becomes severe enough to make the map inconsistent. Doors that should align may appear separated, and the robot may fail to navigate reliably. Loop closure is one of the key reasons modern SLAM systems remain usable over longer runs.

Deployment Considerations

  • Good feature-rich environments improve relocalization.
  • Highly repetitive corridors can make place recognition more difficult.
  • Sensor calibration is critical.
  • Large maps require careful tuning of memory and graph optimization settings.
  • Combining LiDAR, vision, and IMU often improves robustness.

ROS Integration

RTAB-Map integrates well with ROS and ROS 2. In practice, a common setup includes camera topics, odometry input, TF transforms, and map publishing for navigation. Engineers often use it with packages such as rtabmap_ros, RViz, and navigation stacks for local/global planning.

Final Thoughts

The kidnapped robot problem is a useful way to understand why localization cannot depend only on odometry. RTAB-Map offers a practical answer by combining memory, place recognition, and graph optimization. That makes it one of the most valuable tools for engineers working on real robot navigation systems.

Traveling in northern europe

Traveling in Northern Europe leaves a different impression from many other places. The beauty is often quieter: clean cities, calm public spaces, thoughtful design, open nature, and a sense of order that changes the way you experience movement and daily life.

What Stands Out

One of the first things I noticed was the balance between urban life and nature. Even in developed areas, there is often a strong feeling of openness. Water, trees, walking paths, and well-organized public transport create a rhythm that feels both modern and calm.

Design and Simplicity

Northern Europe is also memorable because of its design culture. Buildings, public spaces, and everyday objects often feel intentional rather than excessive. There is a practical elegance in the way things are arranged, and that simplicity can be surprisingly inspiring.

What Travel Teaches

Travel is not only about sightseeing. It also changes perspective. Seeing how other societies organize public life, mobility, space, and social trust can affect the way we think about our own routines and assumptions.

A Personal Reflection

For me, traveling in Northern Europe was not only enjoyable because of landscapes or architecture. It was meaningful because it encouraged a slower and more observant way of seeing. Sometimes a place stays with you not because it is loud, but because it is deeply coherent.

Final Thoughts

Northern Europe has a quiet character that grows on you. It offers a different kind of travel experience: less about spectacle, more about atmosphere, structure, and the subtle beauty of well-lived spaces.

The witcher 3

The Witcher 3: Wild Hunt (Polish: Wiedźmin 3: Dziki Gon) is a high-fantasy, action role-playing video game set in an open-world environment, developed by CD Projekt RED. Announced in February 2013, it was released worldwide for Microsoft Windows, PlayStation 4, and Xbox One on 19 May 2015. The game is the third in the series, preceded by The Witcher and The Witcher 2: Assassins of Kings, which are based on the series of fantasy novels by Polish author Andrzej Sapkowski.

Played in a third-person perspective, players control protagonist Geralt of Rivia, a monster hunter known as a witcher, who sets out on a long journey through the Northern Kingdoms. In the game, players battle against the world’s many dangers using swords and magic, while interacting with non-player characters and completing side quests and main missions to progress through the story. The game was met with critical acclaim and was a financial success, selling over 6 million copies in six weeks. The game won over 200 Game of the Year awards from various gaming websites, critics, and game award shows including the Golden Joystick Awards and The Game Awards.

The purpose of this guide is to maximize your chances for romantic encounters in The Witcher 3: Wild Hunt. Some of the characters Geralt gets to bed are true romantic interests, while others are just casual partners. Either way, in order to end up in bed with your chosen partner, you’ll have to seduce them. This will be done through gifts, sweet talking and similar actions. In this Witcher 3 romance guide, we’re going to list all the character we find you can have sex with, as well as the conditions for having it.

While adventuring, Geralt of Rivia has more than one opportunity to polish more than his steel sword for an evening. There are a number of women that can be wooed into a night of passion. But how many? Who? And where? Glad you asked. The following are the times, quests (where appropriate), and ladies you can spend a romantic evening, or a rutting session, with. Any stipulations are listed in their appropriate quests.

wicher

Those who’ve played the previous games are already familiar with Triss – she has starred in both of the former games, and has been available for romance in both, too. Once again, she can be a romantic interest if you choose so. You need to finish her sidequest – Now or Never, after you’ve done the main quest A Favor For Radovid, as well as the secondary quest A Matter of Life And Death.

During the A Matter of Life and Death, you need to kiss Triss at the masquerade. When you start Now or Never, go and defend the mages. When you’re at the docks near the end, Triss is resolved to leave for Kovir with the other sorcerers. Geralt can ask her to stay, telling her that they can try to make their relationship work, or he can truly pour his heart out and tell her that he loves her. She then boards the boat, but (if Geralt said he loves her and only then) comes back for you. You then have sex at a lighthouse.

Dong son drums and vietnamese culture

Dong Son drums are among the most iconic artifacts of ancient Vietnamese culture. They are not only bronze objects of technical skill, but also historical symbols that reflect ritual life, artistic expression, social organization, and early metallurgical achievement.

What the Dong Son Drums Are

These bronze drums are associated with the Dong Son culture, which flourished in northern Vietnam in the late Bronze Age. The drums vary in size and decoration, but many are notable for their carefully cast patterns, geometric designs, animals, boats, dancers, and central star motifs.

Why They Matter Historically

Dong Son drums show that ancient communities in the region possessed advanced bronze-casting techniques and a rich symbolic culture. They are important not only as archaeological finds, but also as evidence of social complexity, craftsmanship, and cultural identity.

What the Decorations Suggest

The images on the drums are often interpreted as clues about daily life and ritual practice. Boats may point to river and maritime activity. Birds and animals may reflect cosmology or nature symbolism. Human figures suggest ceremony, music, and communal events.

Why They Still Matter Today

For many Vietnamese people, Dong Son drums are more than museum objects. They are cultural memory. They represent continuity between ancient history and modern identity, showing that the region has a long and sophisticated civilizational story.

A Broader Reflection

I find the Dong Son drums interesting not only because of their age, but because they connect engineering, art, and culture. A bronze drum is both a technical achievement and a symbolic object. That combination makes it much more powerful than a simple tool.

Final Thoughts

Studying artifacts like the Dong Son drums reminds us that culture and technology have always been linked. Long before modern software or machines, people were already building objects that carried both practical skill and deep meaning.

Robocup and the future champions league

RoboCup is an annual international robotic competition proposed in 1997 and founded in 1997. The aim is to promote robotics and AI research, by offering a publicly appealing, but formidable challenge. The name RoboCup is a contraction of the competition’s full name, “Robot Soccer World Cup”, but there are many other stages of the competition such as “RoboCupRescue”, “RoboCup@Home” and “RoboCupJunior”. In 2015 the world’s competition was held in Heifei, China. RoboCup 2016 will be held in Leipzig, Germany. The official goal of the project:

“By the middle of the 21st century, a team of fully autonomous humanoid robot soccer players shall win a soccer game, complying with the official rules of FIFA, against the winner of the most recent World Cup”.

As a Master student of Frankfurt University, I aslo have a project with the Robot who is the best choice for for the Robot Cup as the moment, his name is NAO.

NAO

Nao (pronounced now) is an autonomous, programmable humanoid robot developed by Aldebaran Robotics, a French robotics company headquartered in Paris. The robot’s development began with the launch of Project Nao in 2004. On 15 August 2007, Nao replaced Sony’s robot dog Aibo as the robot used in the Robot Cup Standard Platform League, an international robot soccer competition. The Nao was used in RoboCup 2008 and 2009, and the NaoV3R was chosen as the platform for the SPL at RoboCup 2010. Nao robots have been used for research and education purposes in numerous academic institutions worldwide. As of 2015, over 5,000 Nao units are in use in more than 50 countries.

Christmas markets in germany

One of the most charming experiences in Germany is visiting a Christmas market. It may look simple at first: lights, warm drinks, food stalls, and small handmade gifts. But once you spend time there, you understand why many people wait for this season every year.

Why It Feels Special

A Christmas market is not only about buying things. It is a social space. Friends meet after work, families walk together in the evening, and the city feels warmer even when the weather is cold. The atmosphere is relaxed, and people slow down for a while.

What You Usually Find

  • Gluhwein: hot mulled wine that helps a lot in winter.
  • Street food: sausages, roasted nuts, potato pancakes, and sweet pastries.
  • Small handmade items: candles, decorations, ceramics, and gifts.
  • Music and lights: simple details that make the place feel festive.

Why It Matters for People Living Abroad

For someone living far from home, events like this can make a real difference. They create easy opportunities to connect with others without needing a formal plan. You do not need a big budget or a perfect schedule. You just need an evening, a warm jacket, and a few friends.

That is probably why I like this tradition. It reminds me that a good life is not built only around work and productivity. Shared experiences matter too.

A Few Practical Tips

  • Go early in the evening if you want a calmer atmosphere.
  • Bring cash, because some small stalls still prefer it.
  • Dress warmly, especially if you plan to stay for more than an hour.
  • Try local food instead of choosing the safest option every time.

Final Thoughts

The Christmas market is a small part of life in Germany, but it leaves a strong impression. It is simple, human, and full of atmosphere. For me, it is one of those experiences that makes a foreign country slowly start to feel familiar.