Browse Source

add quad parts

master
Schoenberger, Philipp 6 years ago
parent
commit
661b2873e6
  1. 24
      content/blog/02_3d_printer_en.md
  2. 55
      content/blog/03_quadrocopter_en.md
  3. 9
      content/blog/04_quadrocopter_en.md
  4. BIN
      content/images_org/quad/diatone_130.jpg
  5. BIN
      content/images_org/quad/motor.jpg
  6. BIN
      content/images_org/quad/motor_datasheet.jpg
  7. BIN
      content/images_org/quad/motor_datasheet2.jpg
  8. BIN
      content/images_org/quad/motor_datasheet3.jpg
  9. 4
      pelicanconf.py
  10. 9
      plugins/lightgallery/lightgallery.py
  11. 4
      plugins/sitemap/sitemap.py
  12. 2
      themes/minimal/static/css/minimal.css

24
content/blog/02_3d_printer_en.md

@ -1,8 +1,26 @@
title: 3d printer title: 3d printer
date: 2019-05-20
date: 2018-05-20
author: Philipp Schönberger author: Philipp Schönberger
tags: 3d printer, ender2, cat
tags: 3d printer, ender2, CAT
category: projects category: projects
Here you can view the.. latest projects i've started.
Since this month I one now one small 3d printer. Its a "ender 2" with
an buildvolume of 165x165x200mm. For my purposes this is more than enought since I
always could print larger parts with the Toolbox e.V. Printers.
The printer was pritty easy to assemble and took just about 2 hours of carfully reading and
assembling the parts.
Out of the box the printer was printing prefect. But since i did know that the printer from
creality have disables safty features I installed the latest firmare from the [Marlin]{http://marlinfw.org/} github repository.
There I changed the config parameters to my need and enabled the folling options to lower the risc of fire caused by a pritner failure.
#define THERMAL_PROTECTION_HOTENDS // Enable thermal protection for all extruders
#define THERMAL_PROTECTION_BED // Enable thermal protection for the heated bed
With this option enabled I Printed a benchy which came out perfectly. A benchy is a small boot which you can see in the lower picture. It has some structural parts which are though to print.
[lightgallery
/images/3d/benchy.png, first benchy with 0.15mm layer hight
lightgalleryend]

55
content/blog/03_quadrocopter_en.md

@ -1,9 +1,60 @@
title: quadrocopter title: quadrocopter
date: 2019-05-20
date: 2019-06-20
author: Philipp Schönberger author: Philipp Schönberger
tags: bataflight, quadrocopter, fpv tags: bataflight, quadrocopter, fpv
category: projects category: projects
Infected by the other members of the Toolbox e.V, especialy [Thomas](https://www.xythobuz.org/)
I started to search for parts for a quadrocopter which could be used to race and do some
freestyle moves.
Here you can view the.. latest projects i've started.
Since for me also the assembly is new and I had the feeling that this quad will also be
likely to be damaged I wanted to build it with seperate components. Also its more fun that way.
Since I did not want to have a huge quad I wanted to hit the 250g Law limit for the assembly.
In such a case I would not even be forces to add a burn resistent name tag to the quad, which I
would anyway recomend if it could be lost.
After some search i found the [Diatone quad frame GT M3](https://www.banggood.com/Diatone-2018-GT-M3-130mm-Normal-X-FPV-Racing-Frame-Kit-RC-Drone-3mm-Arm-p-1257062.html) prity aplealing since they have a aluminum cage for the pcb stack and a 3mm carbon plate which is robust enought for a beginner.
[lightgallery
/images/quad/diatone_130.jpg, Diatone 2018 GT M3 130mm
lightgalleryend]
The following motors where selected by taking the recomendations of the frame into account:
motorsize 1408
motorr 4000KV
The motor size of brushless motors for quadrocpters are regulary indicated by a 4-digit number
The first two digits represent the stator width or diameter while the second ones represent the hight.
The values types are in mm
In general the motor size have quite a infulence of the flight caracteristics.
A taller motor most likely result in more power at the upper Throttle/RPM and a wider motor
would result in a higher torque at low throttle.
Since i wanted to use motors with a actual datasheet or at least a messurement how much amps
would be drawn by them with a certain propellor i took the [T-Motor F20II F20 II 1408 3750KV](https://www.banggood.com/T-Motor-F20II-F20-II-1406-3750KV-Brushless-Motor-2-4S-For-130-140-150-FPV-Racing-Frame-p-1154351.html)
[lightgallery
/images/quad/motor.jpg, T-Motor F20II F20 II 1408 3750KV;
/images/quad/motor_datasheet.jpg, T-Motor F20II F20 II dimensions;
/images/quad/motor_datasheet2.jpg, T-Motor F20II F20 II electrical specification;
/images/quad/motor_datasheet3.jpg, T-Motor F20II F20 II load specification with diferent propellor sizes;
lightgalleryend]
At this point the Motors and Frame where clear. The next step was to choose a propellor type.
For this I selected a tri bladed one with close to the 3040 size. The size for
part list:
- [Diatone quad frame GT M3](https://www.banggood.com/Diatone-2018-GT-M3-130mm-Normal-X-FPV-Racing-Frame-Kit-RC-Drone-3mm-Arm-p-1257062.html)
- [T-Motor F20II F20 II 1408 3750KV](https://www.banggood.com/T-Motor-F20II-F20-II-1406-3750KV-Brushless-Motor-2-4S-For-130-140-150-FPV-Racing-Frame-p-1154351.html)
- [flightcontroller ](https://www.banggood.com/HGLRC-20x20mm-Micro-F4-Flight-Controller-AIO-Betaflight-OSD-5V-BEC-for-XJB-F425-F428-Series-Flytower-p-1203538.html)
- [esc](https://www.banggood.com/20x20mm-28A-BLheli_S-BB2-2-4S-4-In-1-ESC-Support-Dshot600-for-XJB-F428-F328-Series-Flytower-p-1203121.html)
- [props](https://www.banggood.com/10-Pairs-Geprc-3042-3x42-Inch-3-Blade-Propeller-M5-Mounting-Hole-CW-CCW-for-Racing-Drone-p-1190428.html)
- [cam](https://www.banggood.com/RunCam-Micro-Sparrow-WDR-700TVL-13-CMOS-2_1mm-FOV-145-Degree-169-FPV-Camera-NTSCPAL-Switchable-p-1198579.html)
- [VTX]()
- [frsky receiver](https://www.banggood.com/FrSky-R-XSR-Ultra-SBUSCPPM-D16-16CH-Mini-Redundancy-Receiver-1_5g-for-RC-Multirotor-FPV-Racing-Drone-p-1186057.html)
- [beeper](https://www.banggood.com/Super-Mini-1_38g-WS2812-Colorful-LED-with-5V-Active-Alarm-Buzzer-Support-Cleanflight-Betaflight-p-1131891.html?rmmds=myorder&cur_warehouse=CN)

9
content/blog/04_quadrocopter_en.md

@ -0,0 +1,9 @@
title: quadrocopter2
date: 2019-05-20
author: Philipp Schönberger
tags: bataflight, quadrocopter, fpv
category: projects
Here you can view the.. latest projects i've started.

BIN
content/images_org/quad/diatone_130.jpg

After

Width: 1000  |  Height: 1000  |  Size: 38 KiB

BIN
content/images_org/quad/motor.jpg

BIN
content/images_org/quad/motor_datasheet.jpg

After

Width: 940  |  Height: 467  |  Size: 69 KiB

BIN
content/images_org/quad/motor_datasheet2.jpg

After

Width: 940  |  Height: 870  |  Size: 116 KiB

BIN
content/images_org/quad/motor_datasheet3.jpg

After

Width: 940  |  Height: 1157  |  Size: 222 KiB

4
pelicanconf.py

@ -112,7 +112,9 @@ ARTICLE_PATHS = ['blog']
INDEX_SAVE_AS = 'blog/index.html' INDEX_SAVE_AS = 'blog/index.html'
# Navigation menu: # Navigation menu:
SECTIONS = [('blog', '/blog'),
SECTIONS = [
('Projects', '/category/projects'),
('less plastic', '/category/plasticfree/'),
('Gallery', '/gallery'), ('Gallery', '/gallery'),
('about', '/about'), ('about', '/about'),
('Impressum', '/impressum'), ('Impressum', '/impressum'),

9
plugins/lightgallery/lightgallery.py

@ -28,6 +28,7 @@ def process_content(article):
if (j != i): if (j != i):
pass pass
for i in range(0, i):
m = find_between(content, '[lightgallery', 'lightgalleryend]') m = find_between(content, '[lightgallery', 'lightgalleryend]')
imgs = m.split(';') imgs = m.split(';')
@ -139,7 +140,6 @@ def create_scaled_image(org_path, new_path, resize_width):
logger.info("create dir " + dir_path) logger.info("create dir " + dir_path)
os.mkdir(dir_path) os.mkdir(dir_path)
logger.info("convert \n") logger.info("convert \n")
img = PIL.Image.open(org_path) img = PIL.Image.open(org_path)
width, height = img.size width, height = img.size
@ -199,8 +199,8 @@ def create_exif_print(img_path):
ret += "/" + str(exif[33434][1]) ret += "/" + str(exif[33434][1])
ret += "sec " ret += "sec "
# if 34850 in exif:
# ret += " <bolt>" + programm_dic[exif[34850]] + "</bolt>"
if 34850 in exif:
ret += " <bolt>" + programm_dic[exif[34850]] + "</bolt>"
if 315 in exif: if 315 in exif:
ret += " " + exif[315] ret += " " + exif[315]
@ -210,12 +210,15 @@ def create_exif_print(img_path):
return ret return ret
except ValueError: except ValueError:
return "" return ""
def initialize_plugin(pelican_obj): def initialize_plugin(pelican_obj):
'''Initialize plugin variables and Pelican settings''' '''Initialize plugin variables and Pelican settings'''
global _MAIN_SETTINGS global _MAIN_SETTINGS
if _MAIN_SETTINGS is None: if _MAIN_SETTINGS is None:
_MAIN_SETTINGS = pelican_obj.settings _MAIN_SETTINGS = pelican_obj.settings
_SIGNAL_HANDLERS_DB = { _SIGNAL_HANDLERS_DB = {
'get_generators': initialize_plugin, 'get_generators': initialize_plugin,
'all_generators_finalized': add_gallery, 'all_generators_finalized': add_gallery,

4
plugins/sitemap/sitemap.py

@ -206,6 +206,7 @@ class SitemapGenerator(object):
print("######################################################################") print("######################################################################")
print(self.context) print(self.context)
print("######################################################################")
pages = self.context['pages'] \ pages = self.context['pages'] \
+ self.context['articles'] \ + self.context['articles'] \
+ [c for (c, a) in self.context['categories']] \ + [c for (c, a) in self.context['categories']] \
@ -219,6 +220,9 @@ class SitemapGenerator(object):
for article in self.context['articles']: for article in self.context['articles']:
pages += article.translations pages += article.translations
for blog in self.context['articles']:
pages += article.translations
info('writing {0}'.format(path)) info('writing {0}'.format(path))
with open(path, 'w', encoding='utf-8') as fd: with open(path, 'w', encoding='utf-8') as fd:

2
themes/minimal/static/css/minimal.css

@ -51,7 +51,7 @@ body {
} }
#container { #container {
width: 700px;
width: 1000px;
margin: 0 auto; margin: 0 auto;
} }

Loading…
Cancel
Save