In pursuit of creating assembly instructions for the drone landing platform our team ran into issues creating a concise BOM (bill of materials). In Fusion 360 when a component is mirrored it will be saved under a new name. This naming scheme has been discussed previously on the Fusion 360 blog here. You can see the naming scheme effecting the total quantities in the BOM in the drawing below:
BOM with quantities of the same component not combined
In modeling the drone landing platform we mirrored many components to avoid having to import every bracket on every connection.
Image of using the mirror feature to avoid importing and constraining 46 components on the drone landing platform.
The easy fix to avoid the conflict in the naming scheme would be to not use the mirror function to populate the model with components. We needed to iterate quickly in CAD and importing every component would take too long.
Initially the team used google sheets to take the csv output from the BOM in Fusion 360 to sum up the quantities of equivalent parts. However, user error could effect the output of the part quantities as users had to ensure that the correct cells were selected to sum up.
Above is the spreadsheet grouping equivalent pieces, by creating a script we would eliminate these extra steps.
There were a couple of requirements:
- Account for both 8020 part numbers and McMaster-Carr part numbers
- 8020 part numbers are 4 numbers + letters (appending)
- McMaster-Carr part numbers are 7-8 character of numbers and letters
- Account for miscellaneous named components unique to the team and without part numbers
- Output as csv format for easy copy paste back into Fusion 360 drawings
The low level flow of the script:
- Opens up csv
- Line by line check if name is 8020 or McMaster
- Check if name is a miscellaneous part
- Remove extra bits of naming on the part and isolate part numbers
- Document part number and quantities in dictionaries
- Combine all dictionaries of part number and quantities
- Output as csv format
When all was said and done this script replaced about 20 minutes of potentially inaccurate work into a couple of seconds.
Find the scripts on GitHub here.
Future Improvements:
- Include table of both 8020 and McMaster-Carr part numbers to output both
- Consider having screw count included in how many screws are needed for each bracket to get estimate for hardware purchasing
- Integrate it into Fusion 360 as a script accessible within the UI
- Model each component individually in to bypass needed for the script