Reply To: Arduino Shield Entwicklung

test Forum MakerFaire Wien 5 – 6 Mail 2017 Arduino Shield Entwicklung Reply To: Arduino Shield Entwicklung

#1020
qubit1729
Participant

Hi,

Ich habe mal mit einer Spezifikation begonnen die ich gerne in diversen Foren zur Diskussion stellen würde (deshalb in Englisch)
Bitte um Feedback

Leopold

Proposal for an universal 32bit Arduino Shield
V0.1

Abstract
Main idea is to design a shield like RAMP, which can be used in a broad range of devices (3D printer, CNC machines, laser cutters?, farmbot, personal food computer,…)

OSD (Open Source Design for Sustainability) principles
• Product modularity
• Design for local manufacturing
• Repairability (replacing a damaged module)
• Maintainability
• Upgradeability (new functionality)
• Reusability & Recycleability (exchanging modules between products)


Why a new Arduino-board for the farmbot?

1) Moving to 32bit
The forum says:
In future versions of our board we’ll look at integrating higher quality stepper drivers, adding even more encoder-specific hardware, switching to a 32-bit based Arduino-compatible MCU, and other features based on community feedback.

8bit development on Arduino sooner or late will stop. 33bit has some advantages (see below)

2) Generic board not only for Farmbot
The 3D printer market is much bigger. Sharing electronics and software could decrease prices and speed up development.
The personal food computer project http://forum.openag.media.mit.edu/
uses similar electronics (Raspberry Pi, Arduino and a shield). There are also thoughts to move to 32 Bit.

Why 32bit?

@richard
bitte ergänzen
microstepping, limits of 8bit
Back-EMF -> 32bit necessary?

Arduino Due
The Arduino Due is the first Arduino board based on a 32-bit ARM core microcontroller https://store.arduino.cc/arduino-due
• Due has lower power consumption, computes faster, and has much more storage than the ATmega2560
• CPU operates at 3.3V
• High-current IO pins are capable of 15 mA source, 9 mA sink
• Low-current IO pins capable of 3 mA source, 6 mA sink
• CPU package has an absolute max of 130mA
• The Due has 1 dedicated SPI port, and 4 multipurpose USART/SPI ports. The SPI port is only routed to the 6 pin header used for ICSP on Mega, but this is not used for ICSP on Due.
• The Due does not have any EEPROM
Hardware issues
• MOSFETs need to be compatible with threshold voltage of 3.3V or better have a gate driver which allows any MOSFET to be used
• Expansion pins need to be level-translated, but this depends on how they are used
o Add ons: SD card, thermocouple drivers, LCD boards
• Is heat dissipation of Due ok with RAMPS shield over it?
Yes, the Due consumes approximately 130mA. Also the ARM MCU get barely warm to the touch.
• Some opto-endstops need 5V power, and return 5V on signal
• (AUX-3) The SPI pins on the Mega (mapped to pins D50-52) are not SPI pins on Due
Hardware features known to be compatible
• The Allegro stepper drivers will run with VDD = 3.3V and the logic signals compatible with 3.3V. This should apply to all the Pololu style drivers.
• Servos „should“ be able to operate with +5V power and a PWM signal of 3.3V
• Thermistors will operate at 3.3V but the Analog Ref is also 3.3V, so no changes should be necessary
• Mechanical endstops should be OK, if they do not use external pullup to 5V

Industrial grade version?
https://www.rugged-circuits.com/

Distributors?


Arduino shields

Shields are boards that can be plugged on top of the Arduino PCB extending its capabilities. The different shields follow the same philosophy as the original toolkit: they are easy to mount, and cheap to produce.
There are a lot of shields available for the Arduino
http://shieldlist.org/

Pinout diagrams
http://forum.arduino.cc/index.php?topic=128464.0
http://forum.arduino.cc/index.php/topic,125908.0.html

RAMP?
RepRap Arduino Mega Pololu Shield, or RAMPS for short is designed to fit the entire electronics needed for a RepRap in one small package for low cost
http://reprap.org/wiki/Arduino_Mega_Pololu_Shield
RAMP 1.4 is currently the most widespread board http://reprap.org/wiki/RAMPS_1.4
Modularity
• Pluggable stepper driver
• Plugabble MOSFet modules eg.:
https://de.aliexpress.com/item/New-hot-bed-Power-expansion-board-Heatbed-power-module-MOS-tube-high-current-load-module-for/32803659488.html

Existing shields for Arduino-Due (32bit)?
http://www.dr-henschke.de/RADDS_due.html (german only)
http://doku.radds.org/dokumentation/radds/

re-ARM
https://www.kickstarter.com/projects/1245051645/re-arm-for-ramps-simple-32-bit-upgrade?lang=de
Schematics and PCB layout files will be available after the campaign and after everything is finalized. It will be licensed under CERN Open Hardware License. Check http://www.panucatt.com/ after the campaign for the source files.

RAMPS-FD -> Beta?
http://reprap.org/wiki/RAMPS-FD

Stepper Driver
We want to support 6 stepper boards
preferred size is pololu: https://www.pololu.com/product/2980
https://github.com/laurb9/StepperDriver
http://www.panucatt.com/
-> compatibility list

Layout
In the forum https://forum.farmbot.org/t/farmduino-vs-ramps/1974
I found the following arguments against RAMP:
1. Plugging encoders and the UTM into RAMPS is painful
2. higher quality connectors
3. more mosfets and connectors for peripherals
4. conformal coating (outdoor usage)
5. 12v to 5v adapter to the board and a USB-power-out connector
6. adding a dedicated 12v to 5v adapter to the board and a USB-power-out connector
7. Stacking RAMPS on top of the MEGA can be problematic – its difficult to do, its too easy to damage the boards/pins, and there is a design flaw that causes mechanical interference with the arduino’s barrel jack.
We have to look into 7)
If there is a design flaw it has to be removed.
Using a board on top of the Arduino is more sustainable. If something of the power parts breaks it can easier be replaced. More provider of the parts can reduce the price.

Compatibility
• Compatible to Marlin
Optimized firmware for RepRap 3D printers based on the Arduino platform
Marlin 32 firmware: https://github.com/MarlinFirmware/Marlin/issues/7076
Software
Smoothie is a free, opensource, high performance and modular G-code interpreter and CNC control system for the powerful Smoothieboard 32bits controller
http://smoothieware.org/

Necessary migrations from 8 to 32bit?

Whishes from the community?

Connectivity’s:
(from http://doku.radds.org/dokumentation/radds/) -> adaptieren
• 6 Steppers on-board : X,Y,Z, E0, E1, E2. (Sample: 3 axis and 3 extruders (Z-axis, and E3 extruder, comes with 2 pins strips for optional second stepper).
• 6 Heavy duty MOSFET`s (Sample: 1 HeatBed, 3 HotEnds and 2 fans)
• SD-Card (micro-SD-slot onboard, optional external SD-slot)
• Standard LCD (5V) with 4×20 characters (HD44780 compatible)
• Rotating encoder (on LCD panel)
• 6 endstops (Xmin,Ymin,Zmin,Xmax,Ymax;Zmax)
• 5 thermistors and an ADC
• 3 servomotors
• I2C, SPI, CAN, DAC, RS232 and 8 digital-pins available via pin strips

• Trinamic 2130 Driver?
The TMC2130 provides an integrated motor driver solution for 3D-Printing, Cameras, Scanners and other automated equipment applications. The device has an integrated microstepping indexer, the sensorless stall detection technology stallGuard2™, the sensorless load dependent current control coolStep™ and the completely noiseless current control mode stealthChop™ and is intended to drive a bipolar stepper motor. The output driver block consists of low RDSon N-Channel power MOSFETs configured as full H-bridges to drive the motor windings. The TMC2130 is capable of driving up to 2.5A of current from each output (with proper heatsinking). TMC2130 is designed for a supply voltage of 5…46V. The device has a SPI interface for configuration and diagnostics and a step and direction interface.
https://www.trinamic.com/products/integrated-circuits/details/tmc2130/
https://www.youtube.com/watch?v=sPvTB3irCxQ
https://shop.prusa3d.com/en/3d-printers/180-original-prusa-i3-mk3-kit.html
https://github.com/ultimachine/Einsy-Rambo

Additional Features?
(from http://doku.radds.org/dokumentation/radds/) -> adaptieren
• EEPROM
• Control-LEDs for loads and operation voltage
• Catch-diodes on the MOSFET`s
• Car-fuses instead of thermo fuses
• Variable input voltage: can be supplied from 10V up to 25V
• Heatbed electronic control supports up to15A without a heatsink
• Premium screw terminals
• 12bit ADC (analog to digital converter) upgraded from 10 to 12 bit. Now temperature calculation is done on 4096 measure points instead of 1024, what give a read temperature with 4x better resolution. Combined to a new firmware algorithm that uses 660 measure points to extrapolate results, a new level of accuracy is reached for reprap temperature control…
License
Fully Open Source Hardware
https://www.arduino.cc/en/Main/Policy
Personal Food Computer 2.0 –> GPL 3.0
Cern Open Hardware License?
exact license TBD
Cost, Availability?
TBD

Open questions
• Input protection?
• Verpolungssicherheit?
• Beste Klemmen, Steckverbinder?
• Genügend Platz auf „regular sized“ board?
• Componentlist
Spannungswandler?
• I/O Bedarf PFC (lz)

  • This reply was modified 4 years, 4 months ago by qubit1729.