Friday, October 9, 2015

Microsoft Dynamics AX 2012 Manufacturing – Lean Ninja IoT Scenario Part 4: Functionality/Make to Order

Microsoft Dynamics AX 2012 Manufacturing – Lean Ninja IoT Scenario Part 4-1: Functionality/Make to Order
 
Purpose: The purpose of this document is to illustrate an advanced Make to Order Lean Manufacturing scenario in Microsoft Dynamics AX 2012 on simplified example when manufacturing motorcycles. This document will outline end-to-end functional flow for the scenario from initial setup all the way to Lean costing.
 
Challenge: Microsoft Dynamics AX 2012 out-of-the-box enables mixed mode manufacturing including discrete, process, project and Lean approaches. Microsoft Dynamics AX 2012 R3 also offers advanced Warehouse management and Transportation management capabilities Manufacturers can greatly benefit from.  The goal will be to establish an end-to-end functional flow for Make to Order Lean Manufacturing scenario at the same time leveraging advanced warehouse management capabilities, better understand what it takes to do it. And then automate this scenario for the future use in a broader Lean Ninja IoT Demo scenario using IoT devices and the power of Microsoft Windows 10 IoT Core OS. 

Solution: The simple but at the same time descriptive real-world example of motorcycles manufacturing provides a necessary context for better understanding of manufacturing processes and warehouse processes and their implementation in Microsoft Dynamics AX. In particular we will be dealing with simple bill of materials which will consist of 2 components and straightforward production flow with 2 activities (one transfer and one process) to supply one of the components in order to implement Make to Order scenario.
 
For more detailed explanation of classic Make to Stock Lean Manufacturing scenario please refer to my earlier blog here: http://ax2012manufacturing.blogspot.com/2015/09/microsoft-dynamics-ax-2012.html
 
In this document we'll greatly enhance the initial classic scenario by overcoming the following original limitations/assumptions:
<![if !supportLists]>-          <![endif]>Using different locations instead of different warehouses
<![if !supportLists]>-          <![endif]>Leveraging advanced warehouse management capabilities for wave kanban picking of parts from a warehouse and put away (if needed)
<![if !supportLists]>-          <![endif]>Handling different quantities of a product in location
<![if !supportLists]>-          <![endif]>Handling different products in location
 
Walkthrough
 
In this scenario Motorcycle will be manufactured using Lean approach. Motorcycle components (Body and Wheels) will be assembled together in a work cell. But before this happens one of components (Wheels) will have to be supplied into Line side location from Near line side location by Water spider, once this happens Work cells worker will be able to pick a part from replenished Line side location and use it for assembly. Near line side location in its turn will be replenished from Warehouse bulk location by Warehouse worker using hand-held device. The entire process (warehouse process and manufacturing process) will be controlled by kanbans. For the sake of simplicity another part (Body) is considered to be available for picking in Line side location (the assumption is that it is available in on-hand inventory)
 
BOM
Production flow
 
 
Please note that the idea is first to replenish Wheels from Warehouse bulk location (Location BULK-001) into Near line side location (BULK-002) and then replenish from Near line side location (BULK-002) into Line side location (BULK-003). Body will be picked directly from Line side location (BULK-003). And the finished product AlexMotorcycle will be put into Finished product location (BULK-004). As you can see I used different warehouse locations in this scenario. In addition to this advanced warehouse management capabilities will be used for wave kanban picking of parts from Warehouse bulk location (BULK-001). In order to detect different quantities of parts in location Weight sensor can be used, and in order to detect different products in location we can leverage RFID technology. RFID technology also comes handy for detecting of who exactly performs work activities based on employee badges. Please see the diagram below for a visual explanation of the scenario.  
 
Diagram
 
 
 
Diagram (Warehouse process focus)
 
 
Please note that in order to generate appropriate kanbans to move parts around we can leverage either Kanban pegging event routine or MRP
 
Diagram (Manufacturing process focus)
 
 
 
On the visual diagram 3 Workcell workers work in their respective Work cells, and Water spider is helping them with replenishment of each Line side location to support a continuous manufacturing process without extra distractions. In addition to this Warehouse worker uses hand-held device for wave kanban picking of parts in order to replenish Near line side location and ultimately let Water spider do his job. This is a great showcase of how warehouse processes complement manufacturing processes in Lean Manufacturing environment controlled by kanbans 
 
One of the requirements defined in this scenario is that all products are Standard cost controlled.
 
As a part of classic Lean IoT scenario we've already established Production flow with activities to enable manufacturing process. As a part of this Lean Ninja IoT scenario we'll need to make a decision about how to enable supporting warehouse processes. There're 2 main options of how we can organize replenishment of parts from Warehouse bulk location into Near line side location and they are:
<![if !supportLists]>-          <![endif]>Using Stock replenishment event and Withdrawal kanbans
<![if !supportLists]>-          <![endif]>Using Stock replenishment event and Manufacturing kanbans
 
Please see the diagram below for more details  
 
Diagram
 
 
From pure WMS point of view using stock replenishment event and withdrawal kanbans won't let us leverage wave kanban picking of parts because you can't plan withdrawal kanban transfer jobs. Instead we can leverage stock replenishment event and manufacturing kanbans in order to plan manufacturing kanban process jobs and create kanban wave for parts picking, in fact we'll also need to introduce appropriate BOM structure. This BOM will consume a part and outcome the very same part. This scenario resembles Rework batch scenario in Process manufacturing. This way we can incorporate wave kanban picking of parts into our scenario.
 
Please see the following diagram for overview of options from Lean + WMS point of view. Please note that the option highlighted with Green is implemented in this document for completeness of the explanation, however the option highlighted with Dark Blue will likely be more preferred and practical in the real world environment.
 
Diagram
 
 
Section: Setup
 
Let's review the setup which is required to implement this scenario
 
First of all I need to make sure that Location is also included as Coverage plan by dimension because in this scenario I introduced different locations instead of warehouses and I want to plan per location accordingly
 
Storage dimension group
 
 
Then we'll continue with introduction of products for a finished good (AlexMotorcycle2) and its components (Body2 and Wheels2)
 
Released product: AlexMotorcycle2
 
 
Released product: AlexMotorcycle2 – Reservation hierarchy
 
 
Released product: AlexMotorcycle2 – Default order settings
 
 
Please note that Default order type = Kanban
 
Released product: AlexMotorcycle2 – Site specific settings
 
 
Cost price for AlexMotorcycle2 is 3000$
 
Released product: AlexMotorcycle2 – Cost price
 
 
Production type = BOM
 
Released product: AlexMotorcycle2 – Production type (BOM)
 
 
Released product: AlexMotorcycle2 – Unit sequence group ID
 
 
First of AlexMotorcycle components is going to be Body
 
Released product: Body2
 
 
Released product: Body2 – Reservation hierarchy
 
 
Released product: Body2 – Default order settings
 
 
Released product: Body2 – Site specific settings
 
 
Cost price for Body2 is 2500$
 
Released product: Body2 – Cost price
 
 
Released product: Body2 – Unit sequence group ID
 
 
Finally another component of AlexMotorcycle2 is going to be Wheel2
 
Released product: Wheel2
 
 
Released product: Wheel2 – Reservation hierarchy
 
 
Production type = BOM. This will be required in order to enable wave kanban picking of parts for Wheel2 when replenishing Near line side location from Warehouse bulk location 
 
Released product: Wheel2 – Production type (BOM)
 
 
Released product: Wheel2 – Default order settings
 
 
Released product: Wheel2 – Site specific settings
 
 
Cost price for Wheel2 is 250$
 
Released product: Wheel2 – Cost price
 
 
Released product: Wheel2 – Unit sequence group ID
 
 
Now we'll introduce item coverage details for Wheel2 in Near line side location (BULK-002). This is required for automated replenishment of Near line side location (BULK-002) from Warehouse bulk location (BULK-001) by Warehouse worker with hand-held device.
 
Released product: Wheel2 – Item coverage
 
 
Please note that Coverage code = Min/Max and minimum quantity in Near line side location (BULK-002) is set up to be 2
 
Released product: Wheel2 – Item coverage details
 
 
Now as we introduced all necessary Released products let's take a quick look at their list
 
Released products
 
 
Next step will be to introduce Resource groups
 
Resource group: AlexMotor2
 
 
Please note that AlexMotor2 resource group will be a Side line location which will be Replenished by the Water spider
 
Resource group: AlexMotor2 – Calendars
 
 
Resource group: AlexMotor2 – Workcell capacity
 
 
We are going to need one more Resource group for this scenario. AlexWarehouse2 resource group will represent warehouse where Warehouse worker will use wave kanban picking technique in order to pick parts from Warehouse bulk location (BULK-001) and replenish Near line side location (BULK-002)
 
Resource group: AlexWarehouse2
 
 
Resource group: AlexWarehouse2 – Calendars
 
 
Resource group: AlexWarehouse2 – Workcell capacity
 
 
In this scenario we'll use Warehouse 24 which is enabled for advanced warehouse management processes
 
Warehouse
 
 
I'll also set up Default kanban finished goods location to STAGE which will be required for warehouse work execution later
 
Warehouse – Inventory and warehouse management – Default kanban finished goods location
 
 
Otherwise you will see the following upon kanban put away work execution
 
 
This is the complete list of locations being used in this scenario
 
Warehouse locations
 
 
Please note that Warehouse worker will perform wave kanban picking in 2 steps: Pick (from BULK-000) and Put (to BULK-001), and parts will be consumed from Warehouse bulk location (BULK-001). That's why I introduced BULK-000 location in Warehouse 24 with some on-hand in it   
 
Location profile
 
 
In corresponding Location profile I marked Allow mixed items checkbox to allow storing different items in Line side location
 
Here's how items flow looks like from Warehouse locations perspective
 
Diagram
 
Please note that because we are going to use Manufacturing kanban to replenish Near line side location from Warehouse bulk location, items in Near line side location are marked as "Finished goods" although those items are technically raw materials to be consumed for production in Line side location
 
Now we'll define BOM structure for AlexMotorcycle2
 
BOM – Designer view: AlexMotorcycle2
 
 
BOM – Lines view: AlexMotorcycle2
 
 
Please note that the consumption of components will happen based on kanban from location per Kanban rule(s). And in the BOM structure I didn't specify particular locations.
 
Now we'll define BOM structure for Wheel2.
 
BOM – Lines view: Wheel2
 
 
We'll keep BOM version Approved but not Activated. We'll assign this BOM version to kanban for replenishment of Near side line location from Warehouse bulk location. We'll also disregard Circular reference are not allowed warning because this version will not be used during MRP (as not Activated version)
 
Infolog
 
 
Then we can define Production flow model and production flow
 
Production flow model: AlexModel
 
 
Production flow: AlexMotorcycle2
 
 
Production flow version details: AlexMotorcycle2
 
 
Please note that I changed Takt unit = Hr
 
Then we'll run Activity generation Wizards to generate activities for Transfer and Process
 
Production flow: Activity = Replenish Near Side Line <- Bulk (Welcome)
 
 
Production flow: Activity = Replenish Near Side Line <- Bulk (New activity)
 
 
Production flow: Activity = Replenish Near Side Line <- Bulk (Create process activity)
 
 
Production flow: Activity = Replenish Near Side Line <- Bulk (Assign picking activities)
 
 
Please note that in order to replenish Near side line location we'll pick parts from Warehouse bulk location (BULK-001)
 
Production flow: Activity = Replenish Near Side Line <- Bulk (Assign activity time)
 
 
Please note that I assigned 0.25 hr as Runtime activity time
 
Production flow: Activity = Replenish Near Side Line <- Bulk (Wizard completed)
 
 
This is how the activity looks like
 
Production flow: Activity = Replenish Near Side Line <- Bulk
 
 
Production flow: Replenish Near Side Line <- Bulk – Activity details
 
 
Now we'll introduce a Transfer activity which will represent replenishment of Line side location from Near line side location
 
Production flow: Activity = Replenish Side Line <- Near Side Line (Welcome)
 
 
Production flow: Activity = Replenish Side Line <- Near Side Line (New activity)
 
 
Production flow: Activity = Replenish Side Line <- Near Side Line (Create transfer activity)
 
 
Production flow: Activity = Replenish Side Line <- Near Side Line (Assign transfer locations)
 
 
Please note that because I've selected Replenishing and Replenished work cells on the previous step, the appropriate Warehouse and Location settings where automatically populated for me based on Resource group (Work cell) data
 
Production flow: Activity = Replenish Side Line <- Near Side Line (Assign activity time)
 
 
Please note that I assigned 0.25 hr as Runtime activity time
 
Production flow: Activity = Replenish Side Line <- Near Side Line (Wizard completed)
 
 
Now we can review a newly created activity
 
Production flow activity: Replenish Side Line <- Near Side Line
 
 
Production flow activity details: Replenish Side Line <- Near Side Line
 
 
Finally we can introduce Process activity which will represent assembly step
 
Production flow: Activity = Assembly (Welcome)
 
 
Production flow: Activity = Assembly (New activity)
 
 
Production flow: Activity = Assembly (Create process activity)
 
 
Production flow: Activity = Assembly (Assign picking activities)
 
 
Please note that we'll pick parts from Line side location (BULK-003) to consume them for production
 
Production flow: Activity = Assembly (Assign activity time)
 
 
Please note that I assigned 0.25 hr as Runtime for this activity
 
Production flow: Activity = Assembly (Wizard completed)
 
 
Now we can review a newly created activity
 
Production flow activity: Assembly
 
 
Production flow activity details: Assembly
 
 
At this point let's take a look at all 3 activities
 
Activities
 
 
Now let's define appropriate activity relations
 
Create activity relations – Replenish Near Side line <- Bulk
 
 
Create activity relations – Replenish Near Side line <- Bulk
 
 
Create activity relations – Replenish Side line <- Near Side line
 
 
Create activity relations – Replenish Side line <- Near Side line
 
 
Create activity relations – Assembly
 
 
At this point we'll be back to the Production flow to validate it
 
Validate
 
 
Infolog
 
 
After successful validation we can activate Production flow
 
Activate
 
 
Infolog
 
 
Now Production flow has been successfully activated
 
Production flow: AlexMotorcycle2
 
 
At this point we can introduce Kanban rules which will drive kanbans creation
First we'll create Manufacturing Kanban rule to generate Manufacturing kanban for assembly step
 
Kanban rules – Manufacturing Assembly
 
 
Kanban rules – Manufacturing Assembly (Events)
 
 
Kanban rules – Manufacturing Assembly (Production flow)
 
 
Then we'll create Manufacturing Kanban rule to generate Manufacturing kanban to replenish Near Side line location from Warehouse bulk location for Wheel(s)
 
Kanban rules – Manufacturing Replenish Near Side line <- Bulk
 
 
Kanban rules – Manufacturing Replenish Near Side line <- Bulk (Events)
 
 
Kanban rules – Manufacturing Replenish Near Side line <- Bulk (Production flow)
 
 
And now we'll create Withdrawal Kanban rule to generate Withdrawal kanban to replenish Side line location from Near side line location for Wheel(s)
 
Kanban rules – Withdrawal Replenish Side Line <- Near Side Line
 
 
Kanban rules – Withdrawal Replenish Side Line <- Near Side Line (Events)
 
 
Kanban rules – Withdrawal Replenish Side Line <- Near Side Line (Production flow)
 
 
This concludes a necessary Lean Manufacturing setup. Now we'll review WMS setup required for this scenario
 
WMS setup
 
In this scenario we're going to use 2 menu items for Kanban picking and Kanban put away as presented below
 
Menu items – Kanban picking
 
 
Menu items – Kanban put away
 
 
Then we want to make sure to include these menu items into appropriate menu for hand-held device
 
Menu
 
 
Then we'll define location directives for Kanban picking and Kanban put away as presented below
 
Location directives – Kanban picking
 
 
Location directives – Kanban picking (Query header)
 
 
Location directives – Kanban picking (Query line)
 
 
Please note that we'll replenish Near Side line location from Warehouse bulk location (BULK-001)
 
Location directives – Kanban put away
 
 
Location directives – Kanban put away (Query header)
 
 
Location directives – Kanban put away (line)
 
 
Please note that we'll replenish Side line location from Near Side line location (BULK-002)
 
Then we'll define work templates for Kanban picking and Kanban put away
 
Work templates – Kanban picking
 
 
Work templates – Kanban picking (Query)
 
 
Work templates – Kanban put away
 
 
Work templates – Kanban put away (Query)
 
 
Also we'll define Kanban wave picking template as presented below
 
Kanban wave template
 
 
Linkage to production flow activity
 
 
Please note that we're going to use 2 Manufacturing kanbans for the following:
<![if !supportLists]>-          <![endif]>Replenishment of Near Side Line location from Warehouse bulk location
<![if !supportLists]>-          <![endif]>Assembly
Thus we want to make sure that Kanban wave picking is only used for Replenishment of Near Side Line location from Warehouse bulk location, and not for the Assembly step
 
For this purpose we'll introduce an additional delimitation criteria in Kanban wave template Query as presented below
 
Kanban wave template - Query
 
 
Please note that only one of two criteria will be enough, they are describing the same activity (I included both for clarity)
 
At this point we are ready to begin scenario execution
 
To be continued here: <Link>
                               
Tags: Microsoft Dynamics AX 2012 R3, Lean Manufacturing, Pull, Kanbans, Kanban rules, Production flow, Warehouse Management, Hand-held devices.
 
Note: This document is intended for information purposes only, presented as it is with no warranties from the author. This document may be updated with more content to better outline the issues and describe the solutions.
 
Author: Alex Anikiev, PhD, MCP
 
Special thanks for collaboration in building this scenario goes to Lean Transformation Guru at MCAConnect, Phil Coy

3 comments:

  1. Useful information shared. I am very happy to read this article. Thanks for giving us nice info. Fantastic walk through. I appreciate this post. storage marketing materials

    ReplyDelete
  2. This is such a great resource that you are providing and you it away for free. I love seeing blog that understand the value.Microsoft Dynamics Implementation

    ReplyDelete
  3. Excellent and decent post. I found this much informative, as to what I was exactly searching for. Thanks for such post and please keep it up.Microsoft Dynamics Implementation

    ReplyDelete