The 3D Scanner Project is an innovative endeavor focused on creating a cost-effective and user-friendly 3D scanning system. By combining advanced hardware and software technologies, the project aims to capture accurate and detailed digital models of physical objects. This cutting-edge technology has the potential to revolutionize industries such as manufacturing, healthcare, architecture, and cultural heritage preservation, opening up new possibilities for creativity and problem-solving.
Tools 🛠️1. STLINK-V3MODS Programmer (H40Rx):
H40Rx is a programmer module which contains STLINK-V3MODS stand-alone debugging and programming mini probe for STM32 micro-controllers (Hexabitz modules and other MCUs).
It supports the SWD (Serial Wire Debugging) interface for the communication with any STM32 micro-controller located on an application board.
It also provides bridge interfaces to several communication protocols, allowing for instance the programming of the target through boot-loader.
2. 1D LiDAR IR Sensor (H08R6x):
H08R6x is an infrared (IR) time-of-flight (ToF) ranging sensor module based on ST VL53L0X sensor and STM32F0 MCU. This sensor is immune to surface reflectance or varying lighting conditions and can function as a 1D LiDAR or gesture-detection interface. It can measure distance accurately up to 2 m.
3. Dual H-Bridge Motor Driver (H18R1x):
H18R1x is a dual H-bridge motor driver module based onL298 and STM32G0 MCU.
The H-bridge motor driver module, allows driving motors in two directions (forward and backward). With such a module, the motor can be made to rotate, and the polarity of the motor’s power supply can be reversed to change the direction of rotation. If necessary, the motor can also be braked.
4. 3.3V/1A DC-DC Power Supply (H03R0x):
H03R0x is a compact DC-DC buck power supply with a 3.3V/1A DC output and 5-40V DC input. The output voltage is provided through Hexabitz SMD edge-pad connectors (3.3V on top and GND on bottom). The -T module version comes with a 5.08 mm terminal block connector for input voltage, while the -J comes with a DC power jack. Use this module to power all your Hexabitz creations (and other hardware) from a DC source (battery, AC/DC wall adapter, etc.)
we use 4 of H18R1 module to drive a XYZ stepper motor, one of the modules is a master who receives the G-code format then handles it and sends command via UART to other module doing the movement by moving the stepper motors
we use H08R6 module to measure the distance from the plate for each movement, so if there is an object the distance will be changed.
this module is connected to the master of other modules and is connected to a computer, this will allow to receive and transmit data between the two.
the module uses VL53L0X ic which is a time-of-flight (ToF) sensor that uses laser light to measure the distance to a target object. the range of sensor is ( 4 - 200cm)
The field of view (FOV) is 25 degrees and can affect the reading distance and the object will not appear in clear detail so we should make the light ray of sensor more straighter or take the sample as close as possible from the object
The accuracy is lower as the distance increases, so when taking samples,
before starting the process we make the distance between the LiDAR and the top of object at most 4 cm by moving the z-axis, this way will increase accuracy because the reading is for a very small field of object.
we use another way we put a sticker on the LiDAR with a small hole opposite the transmitter, which is smaller than the diameter of the transmitter, which allows the rays to exit. The size of the hole will lead to a smaller angle of view,
and leads to reduce the range of measure distance
we have programmed python script that sends the G-code to LiDAR module using FTDI cable via UART then wait for response when the movement ends.
the format of the received data is : Xxx.xxYxx.xxZxx.xx|xx.xx.
which contains coordinates presenting XYZ and the distance.
after receiving the data, it will be stored in CSV file line by line until the process is finished.
we use CSV format because it is easy to read and write and it is supported by a wide range of software applications and programming languages
STEP 4 : plotting the datawe also have programmed python script that opens the CSV file in reading mode then takes the data and plots it
Comments
Please log in or sign up to comment.