jenielva.github.io

Jenielva shepherd

Interface & Application Programming

Day 1.

10.2 Setup Dev Environment for ESP32 S2 Day 1 one was an online session. The teacher went over the slides and instructed the students to set up our dev environment for the esp32 s2 using the instructions from slide 13.

image53

After setting up the environment everyone had to test out the environment using the instruction in slide 17.

image12

Note; i was unsuccessful in setting up my esp32 s2 environment ,so i could not do the test on day 1 of week 1.

Day 2 In lab session

With the help of one of my classmates I was able to set up my environment and do the test.

The first test was to create a Web Server (with websockets) using esp32 s2 in arduino.

How:

Step 1 was to connect a led to pin 15 of the esp32 s2. And create a folder to save the code for the webserver. In this folder create another folder named data (the html index will be saved here.

Step 2 Install spiffs(if you don’t have it already) and the needed libraries in the Arduino IDE.

Step 3 Open a new Arduino ide sketch and paste the code

The second test was to create a web server with multiple sliders to control LED brightness.

How:

Step 1 was to connect the leds to the esp32 s2.

Step 2 Install spiffs(if you don’t have it already) and the needed libraries in the Arduino IDE.

Step 3 create a folder to organize your files image30

Arduino sketch that handles the web server;

index.html: to define the content of the web page;

sytle.css: to style the web page;

script.js: to program the behavior of the web page—handle what happens when you move the slider, send, receive and interpret the messages received via WebSocket protocol.

Step 4 copy the codes from https://randomnerdtutorials.com/esp32-web-server-websocket-sliders/

Step 5 connect the esp32 s2 , upload the code and open the html file.

In this session we were introduced to mqtt lens ( A chrome plugin). The class was instructed to download the Mqtt extension and then connect to the mqttwebserver test.mosquitto.org.

After the lesson i used the link provided in the slide and went on w3school.com to learn more about HTML, Css and javascript.(i haven’t learned everything yet)

We were also instructed to create a mockup of the chataplication we wanted to create and to create an html file with div and wire up the js code.

image50

Day 2 inlab session

In the lab session we were instructed to continue working on our web chat application. I managed to create a web interface but I could not connect to the mqtt server.

After some time everyone changed because test.mosquitto.org was giving problems.

I still was able to connect though and decided to skip that and work on the styling for my webchat.

This what the chat looked like: image117

This was styled using the css tutorial on w3schools

In this session we went over how far we were with the webchat application and had to share our scenes. I still was able to connect to the mqtt server now but was not able to send message. I kept getting an error in line 1 of my html.

I tried putting the js code and my styling (css)in a different file but I still kept getting the same error

I finally discovered why I could not send messages. I made a few mistakes in the div class for the button.

So after I finally got the code to work , I added more. I created another app.js file and added the new javascript there. With this javascript I was able to see who entered the chat and see the messages sent in the chat.

image43

I also set up my Node Js environment. I had to do this twice because I didn’t wait for everything to download the first time and shut down my terminal window.

So not everything was installed

3D Printing

download

7.1 What is 3d printing?

3D printing is the act of adding layers and layers of filament (thermoplastic feedstock for fused deposition modeling 3D printers) to create a solid object using a 3d printer. 3D printing is an additive process because you are adding layers to create an object.

7.2 type of filament?

Filament is the thermoplastic feedstock for deposition modeling 3d printers. There are many different types of filament but in the lab i will be working with the PLA (polylactic acid filament ) and the ABS( acrylonitrile butadiene styrene filament).

image74

Although both filaments are thermoplastic, The PLA is organic , stronger and stiffer than the ABS but the PLA has a big disadvantage because it does not have very good heat resistant properties because of this PLA is more of a hobbyist material. ABS on the other hand is weaker and less rigid than than the PLA but it’s also tougher and lighter than the PLA. That is why ABS is the preferred filament when making prototypes.

7.3 printers

There are two printers in the lab, the anycubic 4 max pro and the anycubic predator(deltabot).

The anycubic 4 max pro has an enclosed printing space with a large build volume to enhance printing quality. It is also out of box and there is no need to assemble. It is also safe for children because it has an optional auto power off feature. There is also a sensor that turns off the machine when it runs out of filament.

image15

The anycubic predator is a bit more for advanced 3d printing. It uses delta bot ( 3 robotic hands attached to the printhead to deposit material. This is the printer that I will be using in this bootcamp. image38

7.4 printing software Cura 5.0.0.

For the boot camp i will be using Cura 5.0.0. I prefer to use this version because 1. It is the latest version and 2. Its is easier to use because of it has different profiles with preset parameters( this was not available in the older versions.)

I downloaded Cura from this link :https://www.windowsinside.com/software/ultimaker-cura/download this version can be used on a laptop with 32 bit and 64 bit.

download

7.5 Basic PLA parameters

There are some basic parameters you should/ pay attention to when 3D printing. What you need to pay attention to is the : Quality, speed and temperature, filament, fill , support and machine.

Quality: there are 3 important things to pay attention to by quality. The layer height(the height that each printed layer will have), shell thickness(the thickens of the other shell of what you are printing) and enable retraction(retraction has to be enabled or else the filament will leak when the nozzle is moving from point a to point b) Speed and temperature: the3 important things to pay attention here to are the: print speed mm/%(the speed at which the machine prints),printing temp(the temp at which the filament will become liquid), bed temperature( the bed that will be used to print also need to be hot(so the temp of the plate)). Filament: here there are two things to pay attention too. 1. The diameter: this depends completely on the size of the filament you are using and nozzle size for example the PLA filament is 1.75 mm. So for the the diameter i will put 1.75 mm. 2. The second thing to pay attention too is the flow: Fill : Here you need to pay attention 1. the bottom/ top thickness: this like the shell thickness 2.full density: this is to determine how solid you want your object to be. The higher the density the more solid your object will be . Also the higher the density the longer it will take to print.

Support: here you pay attention to support type: this has to be enabled so your 3D print will be supported or else it will collapse. Platform adh type: this is so the machine print a parameter around your 3D before it start on your design so the filament can start running. Machine: pay attention to the nozzle size.

Some basic diameters for PLA:(change to suit your needs)

Screenshot (1)

7.6 Setting up Cura and Using it.

After installing Cura I needed to set it up so I could use it. This was easy because as stated in 7.4 This version of cura already has a lot of presets.

First thing you need to do after installing cura is adding a printer. This is done by going to settings, the add printer ,then add a non network printer and then selecting the printer you will be using. I am using anycubic predator so i had to scroll down to anycubic and selected anycubic predator.

settings: image101

image52

Printer: image81

Press on add a non-networked printer: image78

Select printer you will be using:

image65

7.6.1 checking printers

After adding a printer you can go back to check and see if its has been added by going back to setting and hovering over printer. The printer that you have added should show up there.

For example: image80

Since i only have anycubic added for now that is the only one that has shown up, but if you have more printers added they will show up.

##7.6.2 deleting printers Now if you have a printer added but want to remove it. That is very simple to do.

Simply go back to setting then printers and select manage printers. In manage printer select the printer you want to delete and then click on the right options list and press remove. image80

image63

image27

7.6.3 checking the dimensions

After selecting the motor. If you want to check and see if the dimensions re right for your printer you go to manage printers , select the printer you want and then select mange settings. If the dimension are off then you can edit it to make it right.

image27

image107

It is important to know the size of your printer because if you put the wrong dimension in. when the machine will try to print the nozzle might come down too hard and brake dust ruining your machine.

7.6.4 checking parameters

In older versions of cura the parameters needed to be added manually but in the version i’m using there are profiles with preset parameters.

To see these parameters you have to click on the top right corner menu item and then you will see these parameters. image42

Note : fill patern is the patern of the mesh stuff that is always ther when you print.

7.6.5 importing STL file to print.

To print you need and Stl file. An STL file is basically a file with you’re 3d design on it. The steps to adding an stl file to cura are 1.go to file on cura and click add file. 2 Select Stl file and click on open.

Note :when printing make sure your object always lays flat because if it doesnt lay flat, it will most likely collapse. Cura has an option in the side bar that lays the object flat for yoy when you select it.

Note 2:after tselctig lay flat in the side you will see a notification pop up on th botoom tight side of your screen showing you how much time your object will take to print

7.6.6 generating Gcode.

When you’re done adding an STL and setting up your parameters and dimensions, you need to save your object design. This is done by clicking save and saving the file with .gcode.

Gcode is…………..

After saving the file with .gcode you have to copy it to an sd card and then put that into the printer and your object will start printing.

Freecad

download

What is freecad?

FreeCAD is a general-purpose parametric 3D computer-aided design modeler and a building information modeling software application with finite element method support.

How to use freecad?

1.1 making objects with pockets.

The first thing to do is open freecad and select create new. image22

After selecting create new this screen will appear.

image24

At the top of the screen you will start. Select on that an a whole list of options will appear.

You have to select part design. After selecting part design this screen will appear.

image19

When the screen appears you have to look for a sketch and select that. image19

After selecting create sketch some things will appear in the combo view.

There you have to select the base planes you want to work on. (i always pick xy plane).

image98

After selcting your base pane and selcting ok. This will appear. image109

You then have to select the shape you want to create.

image88

After adding you shape you to combo view and select close. image10

After doing that you have to pick pad and your shape will be created. image35

If you want to add shapes or holes or pockets to your object. You can select the top of your object and then go to create a sketch.

image31

image44

The the selcted part of your object will appear. image13

There you can add a shape on top and then select close.

image108

After selecting close , instead of clicking on pad you have to select on pocket or whole. image106

This will be the end result.

##1.2 freecad for cnc ##1.2.1 making and object. The first thing to do when using free cad for cnc is to make a 2D object. image20

After making the 2D object you have to change your units to metric small parts (this is mandatory when planning to use the cnc machine.

You do this by going to edit then preferences. image46

Then you select units.

image57

Then units system and change it to metric small parts.

image71

After doing that select pad to make your 2D object 3D. image61

when you make your object. Always remember to write down your debt because. It will important later on.

Object from another angel: image59

Now if you want to add a pocket to your 3d design you can use the steps in 1.1 making objects with pockets.

Object with a pocket: image45

1.2.2 making jobs

The next step to making an object to cnc is making a job. To that we have to select a new workspace called path. image103

next you have to select job, so you will be able to make operations. image89

After selecting job this will pop up. image70

When you see this , you have to make sure body is selecting and then click okay.

Once you do that. This promp will open up. image47

The x,y,z stand for the length, height and width of the stock you will be using to cut out your object. To make sure that the object is cut out right, the stick has to be somewhat bigger than the object. image60

As you can see I changed the x, y and z and the stock around my object got bigger.

Next thing to do is click on output. image36

and this will popup: image64

Next you want to change the processor to ucnc. image68

then select this and save the file where you want. image111

Note that when saving you have to save it as, UCNC OR NC.

image111

Next step is to go back to setup and change origin position. To that you have to zoom in on the point you want to start cnc on and select. Then in the promp scroll down and click set origin.

image112

This will be the result. image32

Then now you can click on okay.

Next is to hide the body. image95

If you look here you can see that we have two bodies. The normal body and the model body.

You want to work with the model body and hide the normal body. To do that simply select the body and press space. You will see the body disappear and to show the model body simply select it and then spacebar and the model body will appear.

1.2.3 making tools

We need to make tools for our cnc machine. The first is to go to tool bit doc and select. image49

this will pop up after selecting. image66

And you will see the tools. initial y freecad does not have a 3 mm toot so you will have to create one.

To do that you have to select this:

image72

Then this will pop up. image79

then select on create toolbit.

This will pop up:

you have to select endmill in this case.

Then this will pop up. image92

Here you then save the mill as 3mm_Endmill.fctb

Not that you have created your mill you go back to this. image79

and your tool will be shown.

If you dubbel click on your mill. The parameter will pop up. Depending on your measurements of your mill you can change the parameters.

For example:

This the default parameters i got for my mill: image102

but after getting the measurements for the mill i will be using in the lab i had the change the perameters to:

image97

Then click okay and close it.

Next is adding the end mill to tools.

To do that you have to select tools. image17

And dubbel click on the endmill.

image116

And the mill will appear here. image113

Then you can delete the default tool.

image73

Next is putting in some parameters for the 3mm endmill

You need the dubbel the endmill in tools. And this will pop up. image37

Now to set these parameters you will need to fiddle around with the cnc machine.

But i was given the parameters so i did not have to do that. image118

I entered these parameters and then the mill was ready and setup.

1.2.4 Making operations to use the tools.(profiles)

The first is to click on job and then pocket shape ( to mil out the pocket). image40

Then open base geometry. Is basically you select the pocket you want to work with.

To that you have selct the pocket rim you want o work with and then click add.

image39

When you this . image76

Then you know the pocket has been added successfully.

Next go to operation.

Edit it to look like this. image23

Next go depths. And edit it to look like this depending on your tools and machine.

This what your depths should look like if you are milling a whole. The final always need to more than your object thickness.

Do the same for all the other pockets and wholes. With pockets the final depths depends on how deep you wan the pocket to be.

If you want to sumilate the cutout. Simply click on cam simulator. image83

next is to cut out base material ( so the whole thing)

First you need to make new profile and select the face and add in base geometry. image58

Next the depths and operation.

1.2.5 adding tabs

Tabs are added to prifle that are being cutout completely.

How select the profile, option and then selct the tabs you want to use.

image18

image54

image23

And then click apply.

Laser

image67

What is a laser cutting?

Laser cutting is a technology that uses a laser to vaporize materials, resulting in a cut edge. While typically used for industrial manufacturing applications, it is now used by schools, small businesses, architecture, and hobbyists.

## Laser cutting using box maker. The first is to go to https://www.makercase.com/#/basicbox nad create the box you want. image87 add the lengt thickness you want and go to dowload box plans.

image48

go to kerf and change it to the kerf of your machine.

Then download an svg or dxf

Inkscape

.

Next step is to open in inkscape.

If you want to add an image simply import one.

image96

Then select trace bitmap. And selct apply. image69

copy the bitmap trace and place wherever you want. image104

save file and then open lightburn. image41

set the parameters there then print.

Kicad and flatcam and candle

image55

What is kicad?

KiCad is a free software suite for electronic design automation. It facilitates the design and simulation of electronic hardware. It features an integrated environment for schematic capture, PCB layout, manufacturing file viewing, SPICE simulation, and engineering calculation.

What is a pcb board?

A printed circuit board is a medium used in electrical and electronic engineering to connect electronic components to one another in a controlled manner.

image91

## How to use kicad?

The first thing i needed to do is download kicad for windows from this link:

https://drive.google.com/file/d/1AHXvjmytPDZ5c39XMc04v2o4xejCfdQQ/view?usp=sharing

Next i downloaded the symbol libraries that was needed. Note: when kicad is installed you will onlyhave the default libraries but you can import libraries(like i did it) if it is neede for your project.

When you open kicad this is the first thing you will see.

Next you have to go to file and select create new project. After doing that you this will appear.

image110

You have to select kicad.sch.

This will pop up afet selecting that.

Nextstep is to add symbols. You do that by selecting this.

image94

And this will pop up: image84

From this you can select all the parts you need for your pcb board.

After adding the parts , you can then connect them by adding wires.

This will be the result: image11

Next you need to go here and run footprint assignment tool:

when you go on this tool this will pop up.

image93

Here is where you assign the footprints to your symbol.

After doing taht pres asve and ok.

Next is saving the file as a net list.

To do that you need to go to export and netlist. Give the file a name and just save.

image114

Now that your file is saved as a netlist its time to open pcb editor and import the net list.

image28

Then you select this to route. image105

After routing ggo to place and select origin.

image62

After doing that go to file then plot.

And Set the parameters.

Business model canvas

3.1 What is a business model canvas?

A business model canvas(a one sheet business plan) is a visual representation of a business model, highlighting all key strategic factors. So a business model canvas basically gives you an overview of the company’s workings, customers, revenue streams etc.

Business model canvases are most used by start-ups but it is also used to document existing company’s.

Alexander Oswalder was the first person to propose the use of a business model canvas.

Before making a business model canvas you have to have a business plan (Plan for successful operation of a business or startup that identifies Sources of Revenue and Target Customer Base combined with details of Financing), only then can you start making a canvas.

3.2 the building blocks

When making a Business model canvas you have 9 essential building blocks.

Those building blocks are :

Key partners: who will be your key partner/suppliers? Which key resources do they provide? Key activities :what are the key processes and task we need to create our value proposition? Key resources: what key resources do our key activities require? Value proposition: Which of our customers problems are we helping to solve?Value proposition look like? Customer relationships:what type of relationship do you want with customers?Which fits best with each segments? Channels:To which channels do each of our segments want to be reached?Which ones are most cost efficient? Customer segments :For whom are we creating value?Who are the most important customers.? cost structure: I mean and elements of operational expense? (Floating variable cost,inventory ,WIP and capital assets). Revenue streams: From which channels and segments? how much does each contribute to overall revenue?

3.3 Why use BMC?

A few resons to use a BMC are because it describe your business in page, it si costumer focused,its easy to present, Easy to benchmark peers/competitors etc.

3.4 my BMC

Before making my Bmc i had to research about my product, what is needed to make it , the development process, what kind of value it will bring to customers’ lives and how I will finance building the product.

https://next.canvanizer.com/canvas/r0C4ZGpeowqQX