Thursday, 23 February 2012

The CAD hangover vs BIM karma

I'm quite lucky really... I work in a highly creative environment, with thought leaders, technical innovators and have a boss who really understands BIM, whilst allowing me the freedom to look at how we can do it better.

BIM implementation is largely a cultural thing in my opinion - back in the "good ol CAD drafting days" people focused exclusively on the plan, detail or section they were producing that day. BIM karma forces us to consider how we build it and what the guy sat nextdoor is working on tomorrow?

In the "flatland" 2D CAD days, we documented things in a prosaic, manually intensive way, trying desperately to coordinate drawings, packages - invariably with little recognition from clients of the effort required to make this happen.

In 2012, we have the tools available to automate these historic pipe dreams and get technology to work for us... for a change. Some of these tools have been around for a while, but generally by exception rather than as a rule.

CodeBook is a highly detailed program and when combined with Revit it can provide miraculous results - BUT - there are some basics that are often overlooked in the new world of BIM complexity.

Understanding what information you already have available to you, not re-inventing the wheel and making the most of that data is regularly forgotten when creating deliverables and "getting drawings out."

I'm an ardent believer in NOT duplicating information, but knowing how to extract and how to make the best use of the data available, in the right medium, is a skill that often comes with a high premium.

Going back to grass roots, reminding you of what you may already know and the information already available to you is the purpose of this "serendipity-esq" post.

Room information and room data stored within your CodeBook database is ready and waiting for you to utilisse within the CodeBook Reports. Most people know what is contained within a Room Data Sheet, but may not realise that this information can be pushed into your BIM model, or extracted through a report.

A room data sheet typically consists of:
_design data - the function of the room, the occupancy, hours of operation etc...
_finishes - floor, wall, ceiling, doors, internal glazing etc...
_environmental conditions - temperature, HVAC, hepa filtration, lighting lux levels, UPS, etc...
_equipment - furniture, equipment and services

...and whilst we report these conclusively in a Room Data Sheet, they can be extracted individually for architectural reasons and to aid in coordination with other disciplines.

The CodeBook reporting function has a number of pre-defined reports, but also several that can be configured or customised to provide whatever you may need through the report settings.

For example, if you wanted to extract the acoustic data, floor finishes, or lighting lux levels to send to a consultant for coordination - you can create a Room Data (xls) report specific to that data.

The way you do this is to select a Room Data (xls) report and in the report settings pick (through tick boxes) the information you require. These are categorised in sections - Room Information, Design, Finishes, Equipment and M+E - first you choose which section you require and then select the fields within these Categories that you wish to report.

For example = choose the Design section and tick the box for Occupancy - CodeBook will produce a report restricted to that information, which can then be emailed to the Services Engineer for checking.

An alternative to excel is to map this data in CodeBook to a corresponding Revit Room Parameter and provide the Services Engineer with a colour scheme drawing that shows each rooms Occupancy values by colour.

In practice you may wish to choose more data than this to send to your services consultant, but individual parameters may be useful, especially when represented in the context of the building through a colour themed view.

The "BIM karma" mentality involves recording information correctly once and then utilising it many scenarios.

Make it happen.

Wednesday, 15 February 2012

Spread the love - system and shared parameters

It's been a couple of months since I last posted... Christmas, New Years, getting engaged, having a baby and Tet (Chinese/Vietnamese new year) are some of my own highlights, I hope y'all had an enjoyable break!

I'm going to start by making a prediction for 2012 - it's going to be a big year for the "I" in BIM, which stands for Information or Interoperability depending on your perspective.

CodeBook 'System' Parameters are those essential for CodeBook to function with Revit, CodeBook 'Shared' Parameters are those which are user defined optional parameters relating to either room or equipment data that you want to include within your Revit model.

Many large practices use a Shared Parameters File (SPF) to predefine the key parameters important to the modelling and documentation of each project. The idea being that you define them once correctly in your SPF and then utilize them on each project - think title block info, common building element, family and view properties.

Let's start with the CodeBook System Parameters, which I've defined in the image below

...these need to be explicitly defined in your Shared Parameters File as above - or you can allow CodeBook to add these to your project by choosing NOT to tick 'Do not create missing shared parameters' see image below. Apologies for the double negatives, but make sure you get it right or you'll have issues when you synchronise rooms, or update designed equipment.

We have chosen to control all parameters and define them through our SPF, hence why this BOX IS TICKED in the image.

The CodeBook Shared Parameters are optional and you can choose to include as many, or as few as you like. The image below shows an example of the CodeBook room information and room data fields we have chosen to 'share' in one of our projects.

The columns on the left hand side indicate the CodeBook fields, the Parameter Group and Parameter Name fields relate to (in this case) the Revit Room Parameters that we wish to 'Share' between CodeBook and Revit. Once you have mapped these, you need to determine which direction the data will be exchanged.

Generally speaking it is advisable to push or publish these parameters from CodeBook into Revit by selecting Copy data TO BIM. Typically you will define room data in CodeBook long before your Revit model is developed sufficiently to include in your model - i.e. your room data sheet info such as room name, required area, floor finish etc... are created in CodeBook during the briefing phase and it is only during the schematic design or design development phase that you would look to link this information with the Revit model.

Once your parameters are mapped, you've chosen the direction in which the data will be exchanged and selected which to 'Include' you are ready to Synchronise BIM to database links. Every time you Synchronise, CodeBook will record the geometric and coordinate data of each room from Revit into CodeBook - PLUS - dependant on what you've defined in your parameter mapping CodeBook will publish room data into the Revit Room Parameters. Note: the direction is critical, if you select Copy Data TO BIM, information will flow from CodeBook into Revit. If you select to Copy Data FROM BIM, the values within your Revit Room Parameters will be copied into the CodeBook fields.

Hopefully this all makes logical sense, but to fully get the point across, let's take the example of room names. If you have room names populated within CodeBook, but not in your Revit model, you would select to Copy Data TO BIM. When you synchronise BIM to database links CodeBook will record area, perimeter etc... from Revit into CodeBook and populate the Room Name Parameter field in Revit with the values defined in your CodeBook project. If you selected to Copy Data FROM BIM (and the Revit Room Name Parameter was empty) you would end up with a CodeBook project full of empty room names.

So to recap, the CodeBook 'System' Parameters are essential for CodeBook and Revit to work together, generally you should allow CodeBook to manage this by leaving 'Do not create missing shared parameters' UNTICKED. If you have defined these in your SPF then you can tick this box - but make sure you get it correct!

The CodeBook 'Shared' Parameters are optional and you define them in the parameter mapping. Specify the data you want to exchange between CodeBook and Revit and the direction - CodeBook to Revit, or Revit to CodeBook. When you Synchronise BIM to database links, the geometry and locational coordinate data will be recorded from Revit into CodeBook AND the parameters you've 'Included' within your parameter mapping will also be synchronised.

Also within Project Parameters > Define Parameter mapping, you'll notice you that you can define parameters for equipment and doors. The same principle applies in that you specify the CodeBook data and map this to a corresponding Revit Parameter. Door parameters can be exchanged in either direction, but equipment parameters can only be synchronised from CodeBook to Revit.

The reason for having a single directional data flow for equipment families, is due to the 'data relationship type' being one to many. Each equipment family should have the same code, description, group etc... but it is possible to have different instance values for these in your Revit model, if the values were entered manually. There is a single record in the CodeBook library for each item of equipments code, description, group etc... therefore you can only publish these parameters from CodeBook to Revit.

Again to fully explain this at length, let's take the example of equipment codes. If you had a family within Revit with multiple different parameter values for the equipment code and CodeBook allowed you to exchange data from Revit to CodeBook, how would CodeBook know which was correct? WE DEFINITELY WANT these to be consistent for each family type, hence why the data flow for equipment is one directional.

Hopefully this has explained CodeBook System and Shared parameters fully, but if in doubt, contact CodeBook support who will be sure to point you in the right direction.

Happy CodeBooking!