X-Carve

This blog post is about a CNC (Computer Numeric Control). When I joined the Makerspace, X-carve was called Shapeoko. It had a 500mm in XY and a 100mm in Z height. During the summer of 2019, I upgraded the Shapeoko to an X-Carve. It was a much better and efficient system. The upgrade involved taking apart Shapeoko completely and rebuilding from the ground up using different parts. 

The main upgrade component was the drivers and the board for the CNC. The X-controller had motor divers and a motherboard built-in, which made the build a little easier. Then, we used stronger and better aluminum profiles to replace the current ones. The new profiles had dual rails so it can run two V-groove wheels on both sides. This improves precision and reduces friction within the axis.

Lastly, I used a 48V independent spindle. This makes it easier to control the spindle. Spindle specs are so much better than the standard X-carve spindle. The standard running RPM is 12,000. The upgrade is complete as of now, and X-carve had its first project lined up while it was in the works. UNT Libraries requested 50 Power outlet faces milled. X-carve successfully completed the whole project just after the day that it was built.

Written By: T. Weerasinghe

Meet Maker Nishan

My name is Nishan, a graduate student at UNT, pursuing Interdisciplinary studies in Applied Data Science, Finance, and Economics. I’ve always been passionate about visualizing data into real-world scenarios to make decisions. The world today we are living to tend to follow, making the more accurate decision based on a massive number of data.

Also, I am a graphic designer who is capable of handling various designing software. The Spark Makerspace has given me valuable opportunities to let me share my knowledge with other fellow students. It has been an excellent opportunity for me to explore new experiences and techniques in Adobe graphic designing software. I find myself in a stable position to share my knowledge, including tips and tricks in each graphical software such as Adobe Photoshop, Illustrator, and InDesign. Not only those but also, my skill area in this place includes LittleBits, Project Planning, 3D modeling, and Printing, Lasercutting, Video Editing, Photography, Power Tool training, Soldering, and CNC training. These are exciting and captivating roles for me to perform as a member of the UNT student community.

The Spark Makerspace is a fantastic resource available for the UNT student community who want to follow their passion and creativity in their personal and professional lives. This place is full of resources and experts in different domains and skills. You are always warmly welcomed to our Spark Family. Come and use our resources to be successful in your dreams.

Written By: N. Dangalla

Lenses

Lens selection is one of the most impactful aspects of an image, determining the compositional and visual characteristics for which the camera captures a scene. A photographer can use a wide variety of different lens selections to get the look they want to achieve.

The first main category of lenses is the focal length, which affects the breadth and angle of the scene being captured. The focal length is measured in millimeters and is defined as the distance from the optical center of the lens and camera sensor. A longer focal length will lead to a narrower field of view, and vice versa. Knowing exactly how this works is not important to take photos, but it is helpful to pay attention to the perspective a particular focal length will capture. A wide-angle lens, most often identified by a focal length of 35mm and below, captures a large portion of the scene in front of the camera. Normal focal lengths, between 35mm and 50mm, will capture a scene almost exactly as the human eye. Beyond that would be the telephoto category, including 85mm and up. Telephoto lenses are often used to capture a subject that is far away or unreachable, for example, birds or other wildlife. This is because of their narrower field of view, zooming into the scene and magnifying a small section compared to what humans see. Check out this example of three different focal lengths all shot from the same position:

Keep in mind that wide-angle lenses will distort the final image, making them less ideal for portraiture where the subject’s face is the main focus.

The second category of lenses is zoom versus prime. A prime lens has a single, fixed focal length. Zooms are adjustable with the minimum and maximum focal length indicated on the adjustment ring, for example, 18-55mm or 150-300mm. Both types of lenses will take good pictures, though you may want to choose one or the other depending on the situation. Prime lenses tend to be much lighter and more compact, allowing for more portability. A street photographer or someone on vacation may find it easier to carry around. Zoom lenses have the advantage of many different focal lengths, effectively acting as many prime lenses in one. Zooms are, of course, much larger and heavier.

Choosing the right type of lens is one of the first steps to take when planning a shoot. Keep in mind how the subject and background will interact with your chosen lens. The appearance of the final image will depend on this one decision.

Written By: M. Heins

PolyPrinter 3D Printers

The Spark Makerspace offers many options for 3D printing. All of our printers use Fused Deposition Modeling, where the printer lays down hundreds of layers of molten plastic one at a time, slowly building up your model. This method of 3D printing was invented in 1988 and is one of the most popular forms of 3D printing in the consumer and maker communities. The plastic used by these printers come in the form of filament spools and can be made out of many different plastics, including ABS, PLA, and Nylon. Filaments can also contain additives for unique effects such as wood, metal, and carbon fiber. A few of the printers we use are Poly Printers, which are locally sourced 3D Printers that deliver fast, reliable, and accurate 3D prints. Poly Printer was founded in 2012 in Midlothian, Texas, and offers a few types of printers, including the 229 and 465dx models, which can print a variety of sizes and materials.

Stop by either of our 2 locations to use these printers and more!

Written By: A. Sliter

Meet Specialist Patrick

Hey! My name is Patrick Friedman, and I am a Makerspace Specialist at UNT’s The Spark. I am a Junior Computer Science major at the University. Stemming from a young age, I knew that I always wanted to be an engineer. I enjoyed learning about computers and software. I had to learn to problem solve early on as my family constantly installed viruses and malware on the family desktop.

I have always liked creating and building. In school, I looked forward to working with computers and electronics. I have been in a woodshop and metal shop since they piqued my interest. I learned how to weld and use power tools, while others were learning Speech or AP English.

The Spark is a great space to learn and bring our creativity to light. Recently, I have gotten into 3D modeling and rendering, and I have used blender primarily as it is a free, yet powerful software. Many game developers and professionals use it to animate and even create full movies.

Included are some renders of projects I have done. Above is an early and final picture of a low poly well. Low poly is a polygon mesh in 3D computer graphics that has a relatively small number of polygons. Low poly meshes occur in real-time applications like video games. The number of polygons in a mesh is an important factor to optimize performance but can give an undesirable appearance to the resulting graphics. Below is a more high-quality render I have made. It is a lightsaber I created in the same software.

The Spark is available for every UNT student who wants to create or just learn a new skill. I am excited to keep working and gain important skills in engineering so that I can use it in the future both professionally and personally.

Written By: P. Friedman

Full Spectrum P Series

A Warm Welcome to Our Newest Machine, the Full Spectrum PS36 Laser Cutter.

A brief history on laser cutting:

The first working laser cutter was created in the 1960s by Western Electric, one of the forerunners of laser technology in manufacturing. Manufacturers soon began using lasers in their processes to allow for much faster production. Many advances have been made since then, such as metal cutting and glass etching. Today, we see more affordable options, better software support, and small-sized machines made specifically for makers. It truly has never been easier to get started with laser cutting.

Our laser cutter operates using CNC or Computer Numerical Control. This allows us to draft our designs on a computer program such as Adobe Illustrator or AutoCAD and upload them to the machine similarly to how a printer works. Laser cutting is accurate — the narrow beam of high energy light on our machine is merely 0.002”, or 0.05 mm. This is what makes laser cutting so unique: high accuracy and fast cutting of certain materials. Traditional methods such as saws and blades are not as fast, quiet, or clean. CNC combined with the highly accurate laser allows for intricate designs or even photo etching automagically.

An example etching piece created on a laser.

Laser cutters are limited in the materials that are safe to use without an industrial filter system, but luckily this includes all types of wood, specific plastics, and most fabrics. Materials that are not safe are plastics such as PVC, vinyl, or ABS. These plastics are commonly used in manufacturing today, but release harmful chlorine gas or hydrochloric acid when burned. This is why, when working with plastics especially, it is important to know exactly what material you want to cut and if it is safe to use on a laser.

Hobbyists and makers have welcomed laser manufacturing with open arms, as they make an effective tool for a variety of uses. Wood burning and etching, carpentry, and other crafts can make use of the precisely controlled laser. Laser cutters are easy to use and setup, with very little clean up required. Makers unfamiliar with CNC can learn very easily through a laser with Adobe Illustrator or similar programs.

If you have any questions about laser cutting or want to get started, visit The Spark Makerspace in Willis library and talk to one of our skilled laser operators!

Written By: M. Heins

Debugging and Finalizing- Part 2

To finalize and remove any discrepancies in our code, it is best to get rid of any unnecessary code. For example, to test the solving function, I had a test board with fixed values. One important rule is to never hardcode or fix values. This is fine for testing; however, we want the user to have full control to ensure future usability.

We also want to shorten and optimize our code. From the beginning, I emphasized that functions were the best way to code. It is much faster to debug specific areas in our code. We can also simplify things by utilizing object-oriented programming. We can have a functions file and the main driver on another main file. This will make our code easier to test, read, and optimize. Since we have a better understanding of our code and the project, many functions can be simplified. It is good practice to take breaks and step away during this step. It is easy to later question why you made some functions more complicated than they should be.

Now that our code is clean and debugged, we can add a Graphical User Interface. We are using a library called PyGame, widely used in Python for small games and early game development. A library adds lots of predefined functions that we can utilize. First, we will draw our board using simple statements in PyGame. Since we have already determined what the user can do, we have a roadmap. We will use the same functions, but modify them for our board. We must create a sketch, draw, select, place, clear, and an update function. We can also create a nice GUI update to show our backtracking algorithm. PyGame has useful draw and event functions for keyboard presses and formatting. The two screenshots are of my previous code and the updated GUI code with PyGame.

The left screenshot is my outcome. I allowed the user to play and have the solving algorithm run if they choose. I created an executable and setup wizard as well so others can download and install the game using a simple plugin installed similar to PyGame called Cx_Freeze. With this, I can change the logo of the executable, create a setup wizard, and so much more. I hope you enjoyed coding this project with me and implemented new functionalities to your liking.

Written By: P. Friedman

Coding-Part 1

To begin, we will write our code in an ideal editor. I am going to use Visual Studio Code because it has a nice design and useful extensions to help increase the workflow. However, something as simple as Notepad is enough.

We will need multiple functions to keep things clean. When coding, it is a good practice to indent your loops and functions cleanly and intuitively as it is easier to read. It is also important to use unique but informative comments and variable names. Naming a variable or a function, “A, A1, B, B1, B2,” is never helpful to you or anyone reading your code. This will ensure quicker debugging instead of staring at your screen for hours because you forgot about a semicolon.

Now that we have an environment, we can work on coding. Since we have a basic idea of Sudoku and what functions a user can do, we will first make the board. The board is a simple matrix, and we will initialize all the values to zero. We will make a print function for it as well for easy debugging.

To create a new unique solvable board, we must work backward. Sudoku is solved when all numbers counting 1-9 are entered and the constraints are passed. As we know, the constraint is that two numbers cannot be in the same row, column, or 3×3 grid. We can do this by implementing the backtracking algorithm. We will be able to make sure a given board can be solved and increase/decrease difficulty per the amount of numbers shown.

The backtracking algorithm is simple. Look for an unanswered spot on the board, pick a number, and continue forward. If there is a conflict, go back to where the problem occurs, and pick a different number. Then keep repeating the process until the board is completely solved. We must make sure to do this algorithm with time complexity in mind. If we do not check for the constraints first and instead test every number from 1-9, it will take a long time as this is very inefficient. This can be similar to the brute force algorithm. Every box has a possibility between 1 through 9. Therefore, we would have to test a maximum of 9^81 values as simple probability suggests.

Once we have made a function for solving the board and checking for an unsolved spot, we can continue. The algorithm will create new unique boards by itself. We will have to keep the solved solution so we can test the user on it later. Some numbers can be revealed by picking a random spot in the empty table and copying that same spot on the solution to show up onto the unsolved board. We can do this as many or as little times as we want. Now that we have the unique unsolved user board and the solved solution, we can start on the GUI or the Graphical User Interface.

Written By: P. Friedman

Prusa 3D Printers

Prusa Research was founded in 2012 by Josef Prusa. The company started as just himself with no outside funding and quickly began to grow into a now 500-person company with over 9,000 printers running at the Prusa factory. His original i3 design for the printer became one of the most popular 3D printer designs due to its open-source nature. They have become the fastest-growing tech company in Western Europe with a growth rate of 17,118% over the last four years. The largest reason for the company’s success is the decision to remain a completely open source. All the firmware, models, circuit board designs, and blueprints have been made public for people to customize, improve, and tinker with to make the product their own if they care to do so. Prusa has managed to be a leader in 3D printing innovation and design because of this principle. This allows people within this community to build off the work of those that came before them, instead of constantly having to work from the ground up. There are countless other 3D printing companies and designs out there, but you would be hard-pressed to find a printer that is not based on or highly influenced by the work of Prusa. Prusa Research has managed to play one of the largest roles in innovation for the 3D printing community in such a short amount of time, and it has been one of the largest contributors to the progression of 3D printing today.

Written By: K. Mortensen