I am nearly done the breadboard/prototype phase of my project and am looking to be moving into the commercializing the project.
I have never gotten this far before and am wondering what challenges lay ahead and if I have the right idea about what is involved.
My project involves using sensors to send data to an arduino Uno relay which then sends data to a central node over CAN. The central node is a MkrZero which sends the information to Losant IoT. There will be lots of relays, over 100 in the initial phase.
My approach is to make a PCB incorporating all the chips and connections on the relay and get it manufactured in bulk. The arduino would be replaced by an atmega328 and the CAN shield by the driver and transceiver chips. Programming would be done in factory or using an FTDI cable. Is this a good approach? Is there anything I should be aware of?
Are there other approaches I should be thinking about taking right now such as experimenting with more exotic AVR chips that have features such as CAN and better prices than atmega328's? Another comment was to abandon the AVR chips in favor of PICs since they have different features and cost less. Is it worthwhile to manufacture something using AVR chips?
I would find an electroncics engineer familiar with the requiments for naufacturing in your part of the World and employ them to advise you.
Designing and building projects and even protypes to PCBs is the easy bit, designing for production and to meet all the required regulations for selling something is the hard bit.
I suspect you dont realise how much can be needed to be able to sell (legally) your project as it does vary around the World, and you did not say where you are or intend to sell this project.
There will be lots of relays, over 100 in the initial phase.
Have you prototyped that?
I am nearly done the breadboard/prototype phase of my project
If you have something on solderless bread board the next step is to wire your exact circuit on strip board. Then have a PCB made. Only make a few until you verify it works and meets emissions tests and any other tests you need for your market. Also see if your market needs RoSH or the equivalent.
Sounds to me like you don't even have a complete prototype employed (something with all those 100 relays in place and doing the job it's supposed to do).
There are of course different (cheaper) processors than the ATMega328. In the AVR family that starts with the ATtiny range. But I think that price difference is completely negligible against the cost of 100 relays, the power supply that can handle them all, and all the other control electronics (port expanders to control them all; drivers for each relay). Heck, even the PCB itself may cost more than that ATmega, as it's got to be pretty big with all those components!
And long before you try to sell one of your project. Find a good accountant and learn how to keep good financial record. Find a good lawyer and get help forming a corporation, such as a LLC or Limited Liability Corporation. This will protest you and your family from having ALL your worldly possessions removed to pay the person who sues you.
Finally, number each of your products with a serial number and keep records of the time, week, month, when a group of devices was made and tested and sent for sale.
Not quite finally, decide who and how you will sell the product.
Another comment was to abandon the AVR chips in favor of PICs since they have different features and cost less.
Looking at the per piece cost of the processor is only a small part of what must be done to arrive at the final cost when you’re doing production.
The first thing you need to know about PIC devices is that the free compilers are a complete and utter joke. The professional compilers are $1500 per seat. Oh, and no C++ for the 8 bit families, at least from Microchip directly.
Second, there is no significant public repository of libraries for common devices.
Third, the tools required for debugging and flashing chips can be $200 each, depending upon the model.
The several points above is only part of why Atmel owns the maker market space and also explains in part why Microchip bought them. Based on your level of inexperience, switching processors at the stage of your development process could well derail the entire effort.
Don’t get distracted by shiny objects or with the thought you absolutely need a feature in a different processor. Trying to save a half dollar a unit means nothing when it takes you an additional year to bring the device to market.
Identify the smallest physical relays that will do your job - or the weight of the assembly will treble the manufactured cost (PCB stock and mechanical design)
I'd be thinking of breaking the relays out to separate boards (?16 each?) for modular replacement and simplicity of connections (sync-serial buss), and whatever outptuy interface you're thinking of.
There are a thousand other thoughts to completely address your question, but that would be my first one.
Remember you're going to need a functional prototype before you order more than a couple of production boards -- guaranteed there will be layout or other errors in the PCB design on the first cut.
Divide the project up into clearly defined milestones.
Exploration budget & payment plan
Research & Viability of customer's idea
Ballpark costing of whole project and timeline and repeat
Acceptance & rework of proposal
Element/component tests
Proof Of Concept (POC) components for customer approval & understanding
Collaborate on Product Spec & then Initial design expectations
-- Getting this far lets you see how much the customer is committed and understands
-- YOU may walk away now...!
FUNCTIONAL prototype budget & payment plan
FP development
Acceptance & rework of FP
PRODUCTION prototype budget
PP development
Acceptance & rework of PP
-- The proposal and exploration budget / milestone payments only get this far
-- THEY may walk away now !
Review and marketing analysis
PRODUCTION budget & payment plan
Acceptance & rework of production plan and budget
Away you go... You're BOTH committed
Steps can be combined - but price just gets compressed - may get slightly higher if timelines are also compressed.
Also let the customer know up front - in writing - that unwritten variation orders don't exist.
Written variation orders will probably cost them extra in time and/or money.
Also let them know of limitations up front that are keeping the budget in hand...e.g. limited memory, performance goals etc
IF I'm not sure of the customer's financial position, or the budget is more than I can risk...
Payment per stage is 60% up front, 30% on delivery, and balance of 10% on first beneficial use.
All these terms and milestones are clearly repeated with each offer document.
Are there other approaches I should be thinking about taking right now such as experimenting with more exotic AVR chips that have features such as CAN and better prices than atmega328's?
The CAN bus AVR's I've seen always cost more than 328P's. The AT90CAN64-16AU is over 3x the price with 64 pins, 64K flash, CAN...
But of course if you buy beaucoup 1000's of the CAN AVR's you might get the each price down to a single 328P.
wvmarle:
But I think that price difference is completely negligible against the cost of 100 relays, the power supply that can handle them all, and all the other control electronics (port expanders to control them all; drivers for each relay). Heck, even the PCB itself may cost more than that ATmega, as it's got to be pretty big with all those components!
Heh, heh ...
You and a number of others have misunderstood the meaning of the word "relay" in his post.
He is referring to a module attached to the CANbus that reads sensors and puts - "relays" - the data to the bus. That is to say there will be up to 100 such modules attached to the bus, the reason for choosing the CANbus. Each such module will be relatively small - he mistakenly refers to basing them on a UNO; in fact using a Pro Mini as a daughterboard to his own as well as a CANbus interface module makes much more sense.
It should be quite reasonable to prototype these with a small number of modules, given consideration of available memory space on the central processor and the characteristics of that number of devices on the CANbus. Whether a MkrZero is the best choice is another matter.
Yep.... if you have hundreds of relays.... and timing is important for relays to be on or off at particular times..... then better do some teats first.... especially if those relays are a relatively long way from the controller. Maybe you've done this already.