Skip to content

DIKW (Data Information Knowlege Wisdom) Scheme

Lachlan Tinsley edited this page Apr 29, 2024 · 13 revisions

Control

The turtlebot is controlled from the footpedals. The footpedals will be used to control the left and right sides of the turtlebot via tank turning.

Data

The footpedals output an adc voltage reading, which we use as sensor data.

  • The adc voltage reading from the left pedal is at a given value
  • The adc voltage reading from the right pedal is at a given value

Information

We can determine the angle of the footpedal base on the adc reading.

  • The left pedal is at a given angle determined by the adc from the left pedal
  • The right pedal is at a given angle determined by the adc from the right pedal

Knowledge

When the angle of the footpedals is nonzero, we know that they have been pressed.

  • The left pedal is being pressed at a given magnitiude determined by the angle of the pedal
  • The right pedal is beign pressed at a given magnitude determined by the angle of the pedal

Wisdom

We know that the turtlebot must move when one of the pedals have been pressed.

  • The left wheels of the turtlebot need to move at a speed determined by the magnitude of the press
  • The right wheels of the turtlebot need to move at a speed determined by the magnitude of the press

Localisation

Data

We recieved point cloud data and IMU data from the turtlebot.

  • The IMU accelerometer reading
  • New points from the lidar
  • Values stored in memory
  • Points on a map

Information

We can gain information about our odometry and surroundings from the sensor data.

  • The accelerometer data gives us infromation about the turtlebots acceleration
  • New points on the lidar gives us information about objects in front of us
  • Values stored in memory give us infromation about the turtlebots speed, position and direction
  • The points on a map contain infromation about objects in the surrounding area

Knowledge

From our information we are able to determine the current speed, position, direction and position of objects around us.

  • If the turtlebot's acceleration is non-zero we known the speed of the trutlebot is changing
  • If the x and y acceleration are both changing, we know that the turtlebot is turning
  • From the values stored in memory, we know the turtlebot is traveling in the given direction at a given speed from a given position
  • From infromation about our surounding area we know what objects are around the turtlebot
  • If there is an object in front of us
    • If there is an object on the map slightly closer to us than our previous position and we are moving forward, we are moving towards that object
    • If there is an object on the map slightly further from us than our previous position and we are moving backwards, we are backing away from that object
    • If there is an object on the map that is slightly left/right on the map as compared to our position, we are moving slightly left or right of these objects.

Wisdom

If there is a change in information, or non-zero change values, they should then be updated in the system. All new information shoud also be added into the system.

  • If the turtlebot's speed is changing, we must update the speed value in memory
  • If the turtlebot's speed is non-zero, then the turtlebots position should be updated in memory.
  • If the turtlebot is turning, we should then update the direction of the turtlebot in memory
  • If there is no information about an object in front of us on our map, then we should add this object on our map