Database tables are organized to capture electrical loads, control points, enclosures, and the wiring that comprise power and control systems.  Data is entered using SOCKETWorx task-centric data views that serve as worksheets.  Users stay focused on entering data that is necessary to create reports and drawings.  

Optionally, SOCKETWorx management of change can be enabled to accumulate data modifications, drawing markups, reference content, and deliverables against design-engineering Work Orders. 

Once there is sufficient data to satisfy drawing requirements, DIAGRAMS reaches into SOCKETWorx to automatically create and populate AutoCAD drawings.  This is accomplished by simply picking drawings to create from within the DIAGRAMS Control Center.


Common drawing types include:

  • Motor Control Centers
  • Power Distribution & Single Lines
  • Enclosure and SubPlate Layouts
  • IO card wiring 
  • Control Loop Wiring
  • Cable & Wire Terminations

This article is a step-by-step guide on how to enter data and ultimately use DIAGRAMS to produce drawings using the simplest AutoCAD automation command, SCRIPT.

Note, column headers Display Names shown might differ across SOCKETWorx instances because they are user configurable, but the column purpose will remain constant and should remain recognizable.

STEP 1 - Entering Electrical Loads

STEP 2 - Entering Enclosures and Junction Boxes

STEP 3 - Entering Control Points and setting IO Address and Junction Box assignments

STEP 4 - Setting Cable and Wire Terminations

STEP 5 - Producing Drawings with DIAGRAMS


STEP 1 - Enter Electrical Loads

The Electrical Loads table has numerous columns that satisfy common design and engineering.
Navigate to it and select Data Views and click the Edit Mode button to populate data in an easy-to-use worksheet-like interface.

There are four fields that are mandatory for Single Line drawing production.

  1. Consumer Type - Populate this by selecting a value from the list. 
  2. Drawing Filename - populate this to group all rows that are to be inserted on them.
  3. Start X - is the drawing x-axis inch World coordinate value where Consumer Types will be inserted.
    The interval, or distance between load types, should b,e no less than 3 inches. Some warrant 4 inches.
    Any Consumer Types that start with 'L#:' should be inserted at the same x,y location and be separated by 4 inches.
  4. Start Y - is the drawing y-axis World coordinate value where the Consumer Type will be inserted.
    There are 2 rows and Y must be set to 20 and 10 for the upper and lower rows respectively.

Other columns service reporting and drawing annotation requirements, so be sure to complete them.


STEP 2 - Enclosures and Junction Boxes

The Electrical Enclosure table has numerous columns that have a role in drawing production.  From enclosure identification to production drawing naming, these columns are used to join data for drawing automation.

  1. Enclosure ID.  Enter TAG values.
  2. Functional Description. Enter enclosure purpose.
  3. Dimensions.  Enter the enclosure width, height, and depth.
  4. TS1.  Enter the terminal block count for Terminal Strip T-1
  5. TS1.  Enter the terminal block count for Terminal Strip T-2
  6.  Termination Drawing.  Enter the filename for the termination drawings.


STEP 3 - Add Control Points

IO Point Assignments

The Control Points table has numerous columns that satisfy common design and engineering requirements for system Inputs and Outputs (IO).
Navigate to the Data Views page, select one of the Control Point views, and launch worksheet mode.

Regardless of the view selected, there are four IO columns that must be populated; Type, Rack, Slot & Channel.
These are automatically combined under the IO Address column, once entered and saved.
Once populated, control points are considered assigned.

Junction Box (JBox) Assignments

Search for and set the data view to JBox Assignments.  This view includes columns for up to five termination JBoxes, that have been entered into the Electrical enclosure table.

JBox0 is always where terminations directly to the IO Point Controller reside. Wiring will be routed from JBox0 to JBox1, and then from JBox1 to JBox2, and terminate at the DEVICES.
Maximumly, JBox0, and JBox1 must be populated for every control point. The last JBox# will always equal 'DEVICE', and all preceding JBoxes will be set to the enclosure identification tag.


Search for and set the data view to Loops.  Here is where control loops are set.  

Column D represents the Loop Identifier.
This value must be identical for all devices within control loops and basically defines the control point grouping.

Column E represents the Loop Sort. These values must all be different for all control points within the control point grouping. These values must start with 1, and increment by 1. This column directly impacts entity placement on drawings, where the devices are drawn from the top down, starting with 1.


STEP 4 - Wiring table population

Wiring data can be intensive!  One thing is for sure, electrical continuity is only possible when wires are terminated on both ends.  Considering that every control point will require 2, 3, or more wires, and that wiring can pass through multiple JBoxes, it is no wonder that wiring table row counts can be many times more than the number of control points.

Here is some good news.
SOCKETWorx auto-populates much of the data based on some simple rules.
If every control point is populated with those values detailed above, wiring table rows will be added automatically and prepopulated using wiring rules like:

  • analog control points use cables with WHT, BLK, and SHD as the conductor color designations.
  • discrete control points shall use cables with RED and BLK as the conductor color designations.
  • JBox0 Terminal strips to be per slot.
  • Enable JBox1 Terminal strips to be [TS-1] for analog and [TS-2] for digital.
  • Filenames are autogenerated for Loops and IO Module wiring.
  • Start Terminal Block numbers are auto-populated to equal End Termination Block numbers.

Depending upon automation achievements, there could be as few as five columns to populate before detailed drawings can be generated from the data.

  1. Cable Tags (Cbl Tag).  Enter tag values against your naming conventions.
  2. Cable Group (Cbl Grp).  Enter a sequential value from multi-conductor Pair and Triad-type cables.
  3. Cable Spec (C Spec).  Enter values that describe cable types.
  4. Start Terminal Block (S TB).  Enter values that mimic the junction box terminal block labels.
  5. End Terminal Block (E TB).  Enter values that mimic the junction box terminal block labels.

No doubt, this data involves having cable management experience where control points are serviced by a combination of single and multi-pair, or triad, cables between junction boxes.   The presumption is that users have the experience and skills to populate these fields.


STEP 5 - Use DIAGRAMS to produce drawings

DIAGRAMS reaches into SOCKETWorx, searches for Drawing Script Reports (DSR), and presents lists of drawings that can be created from them.

From the DIAGRAMS Control Center, click on the Connect to SOCKETWorx button.

The SOCKETWorx Scripting Processor becomes visible.  It is from here that drawings will be added to the active project from database Connections.  Note that the Worx Settings contain the SOCKETWorx URL and user credentials.  Those must be set before proceeding. 

First, select a Connection.  The list is based on all connections that have been included within user roles. 

Second, select a Script Report.  This list is dynamic and includes all SOCKETWorx Drawgin Script Reports active within the Connection.  Each can contain one or more drawings.

Initiate drawing creation by selecting one or more drawing filenames from the list and clicking the Add Drawings to Project button.  Drawings will begin producing one after another.

All drawings produced are now part of the project.

Close the SOCKETWorx Connection, and they will be found in Project Drawings.   Upon opening, they will be connected to Built-in or SQL databases.