We're trying to figure the best way to make a wine rack, if possible with our CNC. It needs to have square corners on the inside, is there any special router bit that can accomplish this? We're making them by hand at the moment and trying to speed up production time.
You didn't state if this is molded from one piece of material (ie. a tree trunk)
First a direct answer to your question of cutting a "square" with a CNC router: The closest thing you can get is to use the SMALLEST bit you can find and cut very, very slowly so you don't break the bit. This will create very small small rounded corners that, at a distance, will appear square. If it were me, I'd do a normal like 1/2" bit first to cut out a rounded-square, then go back with a tiny bit to clean up the corners. But, without a CNC to do an auto-bit change, it would be far easier to just use a chisel and manually tap out a square corner.
PLEASE FORGIVE ME if you're experienced with woodworking, but this appears to be a very simple project, so I'll speak like you're a beginner.
The common way to do a cubby (wine rack) is by using several boards with slots 1/2 way though the board, then slipping the slots into one another to create a self-locking & self-supporting grid pattern of "boxes." This method is a fast process!
I'll provide some instructions: 8 boards will give you 9 square cubbies. Let's say your boards are 5.5" wide by 16" long by .75" thick. We'll shoot for boxes that are about 3.25" square. Stack all boards' broad faces neatly on top of one anther, use a square to make sure they are truly vertical on all sides, and clamp them securely together on both ends.
On the top of the top board (not on its side) along the board length, start 2" in from the end & mark the board, then 3 times go in another 4" & make a mark; you'll be left with 2" at the other end of the board. This will be 4 marks on the board. On each of those 4 marks, make 2 more marks that are .375" (3/8") on either side of the initial marks. This will mark the 4 slots we need to cut that are to be .75" wide (same width as the board's thickness) Then, along the length of the top board, draw a line 2.75" in from the side of the board (that'll be about dead-center, that's how deep you'll cut).
Next, you'll cut the slots.
If your ROUTER can plunge it's bit 2.75" deep, then you could use a .75" wide bit to accomplish this. If doing this by hand, you'll need a straight-edge for a guide at 90 degrees to the boards' surface, but with a CNC you just need to set it up square. At each of the 4 slot-markings, pass the router across all 8 boards perpendicularly, creating a slot in each board. With my router bits, I would have to make several passes in each slot, starting the first pass with a low plunge depth, then additional passes each a little deeper until I'd have nibbled out 2.75" for the slot. The router's drawback is that it is likely to splinter the surface of 1 or both of the outside boards of the clamped assembly -- to prevent this, I would clamp on 2 sacrificial boards to the either side of the 8 clamped boards.
A TABLE SAW will go faster & will have less wood splintering of the board surface. If you are fortunate enough to have a dado blade on your table saw, set the blade to .75" wide. If you're using just a standard blade, you'll just need to make multiple passes to create the .75" wide slots.
Set your table saw blade height at 2.75" (which is 1/2 your boards' width). Onto the table saw, set your clamped 8 boards on their thickness-sides (it's the only way you can set it down anhow, given that you clamped them together). Using the table saw's miter gauge -- that's the metal thing that slides in a slot on the saw table -- set the miter to 90 degrees & use it to help you slowly push the clamped stack of 8 boards though the blade to create the .75" wide slot-marks you marked along the board length. Be precise with the cuts & keep the boards 90 degrees to the saw blade. If you didn't use a dado blade at .75", then you'll need to make multiple passes to nibble away all of the the .75" slot. Alternately, if you have a narrow chisel, you could make just 2 passes at each slot's outer .75" marks and use the chisel to knock out the flap of wood.
Unclamp the boards. Creating a grid pattern, press-fit/slip one board's slot into another board's slot until you've locked all boards into one another. If it's hard to push in, you should use sand paper or a knife to shave off a LITLE wood from the inside of the slot & try slipping the 2 slots together again.
Because you're holding heavy wine botthles, after the dry-fitting, you should remove one board at a time, apply a coat of glue inside both sides of each slot, then reassemble it to its prior orientation. Let dry.
Test it at capacity for stability and strength: Put full wine bottles in all 9 slots and shake your new stand around to ensure it's strong and stable enough before using it.
This sounds like it might be an XY problem where you're asking for a solution to a particular difficult thing without considering that there may be better approaches.
You're correct in that you can't easily cut a square internal corner just with a router (technically it can be done with a 5-axis CNC router, a taper bit, and some clever programming) - but do you really need an internal square corner?
This video is made from the point of view of CNC-machining, but the principles apply to hand-routing as well. Often it is better to machine past the internal corner to make what's sometimes referred to as a "dog-bone" shape which gives you additional clearance. There is a trade-off to this visually but depending on where the joints are going to end up sitting, this may not be an issue.
Alternatively, a simple suggestion if you really do need square internal corners is to rout to a rounded corner, and then trim that corner out square with a (sharp) chisel. Depending on how many joints you have to do, this may be time consuming though.