The 3D Raddict
  • Home
  • About Me
  • My Projects
    • The Virtual Workbench >
      • Task 1: Manipulating Objects
      • Task 2: Its All Balls
      • Task 3: Weighing the Old Way
      • Task 4: Introducing Robbie the Robotic Arm
      • Task 5: Eureka!
    • The Virtual Science Lab >
      • Automation and Process Control Workshop >
        • Automating RadBot - our benchtop robot
    • Robotics : The Mindstorms Project >
      • The R6 Robotic Arm Project
    • Meccano® World >
      • Building No.10 Set's Lifting Shovel
      • "Aunt Sally" Fun Machine
      • MeccanoRAMA
      • Meccano Mechanisms
    • The Virtual Factory
    • My Hometown Walkthrough
    • My First Real Game
    • Surfing Simulation
  • My Little Shop
    • 3D Rad Tools >
      • The Handy Gesture Maker
    • 3D Rad Assets
    • 3D Rad Special Tutorials >
      • RadBot.... Creation, Programming and Challenges
  • My Freebies
    • Mouse Manipulation of Rigidbodies
    • Imposter Grid Editor
    • Andro Ragdoll Demo
    • Rope Demo
    • Cloth Flag Demo
    • Buoyancy Demo
    • Demo2 from The Handy Gesture Maker
    • Bone ID Tool
    • Full Dynamic Shadow for Andro
    • "The CG Tutorial" examples ported to 3DRad HLSL
  • My Odds and Sodds
    • Video - Interacting Rigidbodies
    • Video - Spring Balance Operation
    • Video - Me Walking on 3DRAD Terrain!
    • Video - Basic Breaking Wave used in "Surfing Simulation"
    • Video - Initial Test of Surfing Simulation
    • Video - Realtime Water using the Shallow Water Equations
  • My Blog (Latest news: 27/11/2014)

Task 5 : Eureka!

Picture

 

"Eureka!" was the cry of  enlightenment made by that famous Greek scientist ,Archimedes, when he flopped into his very full bathtub of water, and a large amount of the water spilled over onto the floor ! It inspired him to come forth with his very famous Principle "When a body is immersed in a liquid there is an apparent loss of weight, and this loss of weight is equal to the weight of liquid displaced by the body"
Task 5 will prove this.
As I have only just started this task, I would like to document the salient milestones as I go along my journey.
For the experiment, I'm going to have to put together some virtual apparatus :- a tank of water, a spring balance, a beaker to catch displaced water, a weigh scale, and a couple of bodies (of the non-human variety).
I already had a tank of water from my Buoyancy Demo. All I had to add to it was a spout to guide the overflow:

The Water Tank

Picture
After scouring the free 3D model sites for an electronic weigh scale, and finding nil, the only course of action was to make my own. Not too grand as far as looks, but, hey, I only want something which is functional :

The Weigh Scale

Picture
A nice shiny weighpan, a digital LCD display and a Tare button.

The Spring Balance

 

Picture
I also had to resort to making my own skinmesh model of a spring balance. I needed a ring by which to grasp the balance and a hook to pick up the "bodies". A moving pointer and graduated scale enable the weight to be read.Hidden away in the top part of the frame is the main component.........the spring, which will stretch in proportion to the weight applied (Hooke's Law!)

Picture
Unstretched
Picture
Stretched

The Glass Beaker

Picture

The "Bodies"

Picture

The rigidbodies

The skinmeshes provide the visual aspect for the apparatus. However, the real meat for the physical simulation is provided by their underlying rigidbodies and the physics engine capabilities of 3D Rad (see My Blog ) Without going into detail (and my belief that a "picture says a thousand words") here are a few pics which can explain how the hook is able to pick up a block "body"
Picture
Skinmesh version
Picture
Rigidbody version

and the big surprise......the scale involved !

Picture
Comparison with 'Andro'
I have discovered, through much trial and error, that the physics just don't work nicely at the default scale.......all sorts of random and unexpected movements of the smaller objects. So, as can be seen, the scale of all my apparatus is considerable larger than default "Andro" size!

Applying Buoyancy

Picture
Applying buoyancy forces to the blocks was a cinch, using the new Buoy Object.

Weighing the Beaker

Picture
This was the most challenging part of the whole project.......getting the weigh scale to show the correct amount of displaced water.

Feedback from the 3D Rad Community Forum indicated that the app. crashed when the blocks hit against the sides of the glass tank. I had also experienced this happening occasionally but was unable to find a ready fix at the time of the original posting. I have since discovered that by doubling the thickness of the static rigidbody tank sides, one can now bang the blocks quite happily against the sides without any application failure occuring.
Here is version 2 : 
virtualworkbench_task5_install_v2.zip
File Size: 16651 kb
File Type: zip
Download File

Back to The Virtual Workbench
Powered by Create your own unique website with customizable templates.