fixed. generated MD now shows up and looks half decent. going to have it also use a scrollspy navbar on the left. needs to be autogenerated by the prestart script

This commit is contained in:
len0rd 2018-08-02 20:44:04 -04:00
parent d77ca583ea
commit 392156bf6c
9 changed files with 52 additions and 27 deletions

17
assets/css/projects.css Normal file
View file

@ -0,0 +1,17 @@
img {
display: block;
margin-left: auto;
margin-right: auto;
padding-top: 2vh;
padding-bottom: 2vh;
width: 50%;
}
iframe {
display: block;
margin-left: auto;
margin-right: auto;
width: 50%;
margin-top: 2vh;
margin-bottom: 2vh;
}

View file

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View file

@ -3,7 +3,6 @@ var $document = $(document),
navbarDef = 'bg-dark',
effect = 'fadeInDown';
console.log('waddup');
if (window.location.pathname ==='/') {
$document.scroll(function() {
//if >100 pixels have been scrolled

View file

@ -10,7 +10,7 @@ Having landed a gig at an autonomous flight research center for the summer, I fi
As is the case with most hobbies, much of my money was spent on initial startup costs: an RC transmitter and battery charger, while essential, would only need to be purchased once. If I want to build more rc-craft in the future, this will make it a lot easier.
![FrSky Taranis QX7](img/writeup/frsky-contoller.jpg)
![FrSky Taranis QX7](/img/writeup/darkstar/frsky-controller.jpg)
**Transmitter:** I went with a [FrSky Taranis QX7](https://www.amazon.com/dp/B06XC4C4WH) for a few reasons:
@ -23,13 +23,13 @@ As is the case with most hobbies, much of my money was spent on initial startup
**Frame:** Really nothing special here. I got a [Reptile 500](https://www.ebay.com/sch/i.html?_nkw=reptile500+v3+quadcopter+frame) frame... or something. Honestly not sure on the name here. Basically my strategy was to browse [hobbyking](https://hobbyking.com) til I found something I liked, then I headed over to ebay, to buy something similar. You can get frames for pretty cheap off there if you're willing to wait for it to ship from China. I wasn't, so I paid an extra $10 to get it from a US seller.
As Shipped:
![Frame as shipped](img/writeup/darkstar/frame-boxed-sm.jpg)
![Frame as shipped](/img/writeup/darkstar/frame-boxed-sm.jpg)
(Mostly) Assembled:
![Assembled](img/writeup/darkstar/frame-assembled-sm.jpg)
![Assembled](/img/writeup/darkstar/frame-assembled-sm.jpg)
Some of the arms were a pain to secure:
![Arm Trouble](img/writeup/darkstar/frame-armtrouble-sm.jpg)
![Arm Trouble](/img/writeup/darkstar/frame-armtrouble-sm.jpg)
Overall I'm pretty happy with the frame. It's simple and it was cheap. At first I thought 500mm between motors would be huge, but I've grown to like it and how much space it gives me. I have plenty of room to jam all of my various gizmos throughout. Being cheap and from ebay, it was a bit of an effort to secure all the arms to the frame; aligning the holes was more difficult than anticipated. But once mounted they're pretty solid, and have already survived a few crashes with ease.
@ -37,11 +37,11 @@ Overall I'm pretty happy with the frame. It's simple and it was cheap. At first
I was stupid and tried to screw the motor in through all 4 holes on the arm with some aggressive dremeling, before realizing there were two holes for my motor size, and two for a different size.
![Motors attached](img/writeup/darkstar/motor-attached-sm.jpg)
![Motors attached](/img/writeup/darkstar/motor-attached-sm.jpg)
DJI props! So much easier than the other nightmares I've worked with in the past.
![DJI Props](img/writeup/darkstar/motor-djiprops-sm.jpg)
![DJI Props](/img/writeup/darkstar/motor-djiprops-sm.jpg)
**Receiver:** [FrSky D4R-II](https://www.amazon.com/gp/product/B00SWHWFWO/) Cheap, compatible, capable. I would be comfortable with any FrSky CPPM receiver here.
@ -55,28 +55,28 @@ DJI props! So much easier than the other nightmares I've worked with in the past
Mostly I just added things on here and there as I got them in the mail. I had most of the frame pieces setup and ready to go by the time I had my big 'assembly party'... alone... on a Friday night.... Help me:
Receiver mounted on top with a twist tie, ESC's secured on the arm with some good velcro/zip ties:
![Receiver mounted](img/writeup/darkstar/assembly-1-sm.jpg)
![Receiver mounted](/img/writeup/darkstar/assembly-1-sm.jpg)
This plate+anti-shock mount combo was intended to go in the front of the drone for fpv. While that is something I would like to eventually add, this plate also happened to be the perfect size for the Flip32. So I drilled a few holes, allowing me to mount the naze as close to the center of gravity as was reasonable:
![Flip32 Mount](img/writeup/darkstar/assembly-2-sm.jpg)
![Flip32 Mount](/img/writeup/darkstar/assembly-2-sm.jpg)
Assembly can get messy:
![Assembly environment](img/writeup/darkstar/assembly-3-sm.jpg)
![Assembly environment](/img/writeup/darkstar/assembly-3-sm.jpg)
This is the handiest edition I think I've made. This allows me to plug in the battery with the confidence that the motors aren't going to immediately attack me. Currently I only use one side of the switch, but in the future I plan on having one side turn everything on, while the other side only turns on the small electronics(and not the finger-slicing motors):
![Power switch](img/writeup/darkstar/assembly-4-sm.jpg)
![Power switch](/img/writeup/darkstar/assembly-4-sm.jpg)
Power distribution soldered and mounted! The velcroed piece at the top is my 5V BEC:
![Power distribution](img/writeup/darkstar/assembly-5-sm.jpg)
![Power distribution](/img/writeup/darkstar/assembly-5-sm.jpg)
Naze (aka Flip32) mounted! This is all a bit tighter than anticipated:
![Naze mounted](img/writeup/darkstar/assembly-6-sm.jpg)
![Naze mounted](/img/writeup/darkstar/assembly-6-sm.jpg)
Todo: cable management
![Cable management](img/writeup/darkstar/assembly-7-sm.jpg)
![Cable management](/img/writeup/darkstar/assembly-7-sm.jpg)
Also Todo: Secure the battery in a non-terrible way
![Secure battery](img/writeup/darkstar/assembly-8-sm.jpg)
![Secure battery](/img/writeup/darkstar/assembly-8-sm.jpg)
## Part 2: Fixes and Tweaks
Its been a few weeks since writing part 1 and a lot has changed. For starters the thing actually flies now. As I mentioned in part 1 I had some troubles getting my first set of esc's to work correctly. So I replaced them with new, smaller ones, and *still* had trouble with them. That is until I finally sat down and figured out how to calibrate them (protip: read the instructions that come with your products!). With that squared away, this hunk of junk finally became a flyable drone as opposed to a 180deg flipping machine, as shown in the video below.
@ -85,7 +85,7 @@ Its been a few weeks since writing part 1 and a lot has changed. For starters th
Unfortunately I dont have any footage of the first successful flights(I was out by myself, as usual), but just know it was legendary. Flight 1 went well until I accidentally crashed into a pine tree, which provided a surprisingly cushy landing. Flight 2 was absolutely beautiful until I somehow managed to clothesline my drone on literally the only power line in the immediate vicinity. The rest of the initial flights followed a similar pattern. All-in-all, I ended up buying another 4 sets (with 2/set) of props, after breaking 4 of them. Seeing as this was my first real drone-flying experience, and I was still tweaking some of the settings, I chalk it up to the cost of learning.
![Broken Props](img/writeup/darkstar/tweaks-1-sm.jpg)
![Broken Props](/img/writeup/darkstar/tweaks-1-sm.jpg)
### Sim Practice

View file

@ -30,7 +30,7 @@ app.get(/\/.*/, function(req, res) {
}
console.log('request for path: ' + pathname + ', and page: ' + page);
res.render(pathname, {"page": this.page});
res.render(pathname, {"page": page});
});
app.listen(PORT);

View file

@ -69,7 +69,7 @@
</div>
<div class="card-footer">
<a href="https://github.com/len0rd/Repley" class="card-link text-yellow bottom">See Code</a>
<a href="#" class="btn btn-outline-light">Read More</a>
<a href="projects/darkstar" class="btn btn-outline-light">Read More</a>
</div>
</div>
</div>

View file

@ -1,20 +1,29 @@
<% var rootPath = '../../'; %>
<!DOCTYPE html>
<html lang="en">
<head>
<% include ../../partials/include %>
<%- include(rootPath + 'partials/include') %>
<link rel="stylesheet" type="text/css" href="/css/projects.css">
</head>
<body>
<header>
<% include ../../partials/nav %>
<%- include(rootPath + 'partials/nav') %>
</header>
<div class="container">
<% include(page) %>
<div class="container mt-5">
<div class="row">
<div class="col-3">
<!-- scroll spy goes here -->
</div>
<div class="col-9 mt-5 pt-5 pb-5">
<%- include(rootPath + page) %>
</div>
</div>
</div>
<% include ../../partials/footer %>
<% include ../../partials/post_html_include %>
<%- include(rootPath + 'partials/footer') %>
<%- include(rootPath + 'partials/post_html_include') %>
</body>
</html>

View file

@ -1,7 +1,7 @@
<meta charset="UTF-8">
<link rel="icon" type="image/png" href="img/favicon.png">
<link rel="icon" type="image/png" href="/img/favicon.png">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.2/css/bootstrap.min.css" integrity="sha384-Smlep5jCw/wG7hdkwQ/Z5nLIefveQRIY9nfy6xoR1uRYBtpZgI6339F5dgvm/e9B" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/animate.css@3.5.2/animate.min.css">
<link rel="stylesheet" type="text/css" href="css/site.css">
<link rel="stylesheet" type="text/css" href="/css/site.css">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.2.0/css/all.css" integrity="sha384-hWVjflwFxL6sNzntih27bfxkr27PmbbK/iSvJ+a4+0owXq79v+lsFkW54bOGbiDQ" crossorigin="anonymous">

View file

@ -1,4 +1,4 @@
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script type="text/javascript" src="script/app.js"></script>
<script type="text/javascript" src="/script/app.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.2/js/bootstrap.min.js" integrity="sha384-o+RDsa0aLu++PJvFqy8fFScvbHFLtbvScb8AjopnFD+iEQ7wo/CG0xlczd+2O/em" crossorigin="anonymous"></script>