diff --git a/.gitignore b/.gitignore
index 49100e9..e93f8cd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,3 @@
*.ms14 (Security copy)
+/report/report.pdf
+/report/report_temp.htm
diff --git a/report/0_intro.pug b/report/0_intro.pug
deleted file mode 100644
index e277d01..0000000
--- a/report/0_intro.pug
+++ /dev/null
@@ -1 +0,0 @@
-p yada
\ No newline at end of file
diff --git a/report/0_intro/0_intro.pug b/report/0_intro/0_intro.pug
new file mode 100644
index 0000000..8cdbed0
--- /dev/null
+++ b/report/0_intro/0_intro.pug
@@ -0,0 +1,70 @@
+// Chapter title
+h2 Εισαγωγή
+br/
+
+// Chapter description/introduction
+h3 Περίληψη
+p.
+ Στην εργασία αυτή ζητήθηκε ο σχεδιασμός τεσσάρων (4) διαφορετικών φίλτρων, ενός κατωδιαβατού, ενός ζωνοπερατού, ενός ζωνοφρακτικού και ενός ανωδιαβατού. Κατά την ανάθεση των φίλτρων, μου ανατέθηκε ο εξής συνδυασμός φίλτρων-τύπων φίλτρου:
+
+figure.block-center.width-15cm
+ table.ui.celled.table.teal.striped.center.aligned
+ thead
+ tr
+ th Φίλτρο
+ th Τύπος φίλτρου
+ tbody
+ tr
+ td Κατωδιαβατό
+ td Αντίστροφο Chebyshev
+ tr
+ td Ζωνοπερατό
+ td Chebyshev
+ tr
+ td Ζωνοφρακτικό
+ td Chebyshev
+ tr
+ td Ανωδιαβατό
+ td Butterworth
+ figcaption
+ .reference #[span.table-count]
+ .caption.
+ Συνδυασμός φίλτρων και υλοποιήσεων (τύπων) φίλτρου προς υλοποίηση
+
+
+h3 Σύμβαση ονοματολογίας και ειδικοί όροι
+p.
+ Στα πλαίσια της εργασίας γίνεται χρήση των εξής όρων με τις αντίστοιχες σημασίες:
+
+figure.block-center.width-15cm
+ table.ui.celled.table.teal.striped.center.aligned.compact
+ thead
+ tr
+ th Όρος
+ th Περιγραφή
+ tbody
+ tr
+ td πόλος
+ td Μπορεί να εννοείται ζεύγος συζηγών πόλων #[br/](έναντι ενός, μοναδικού πόλου)
+ tr
+ td LP
+ td Low pass filter
+ tr
+ td BP
+ td Band pass filter
+ tr
+ td BE
+ td Band elimination filter
+ tr
+ td HP
+ td High pass filter
+ tr
+ td LPN
+ td Low pass notch filter
+ tr
+ td HPN
+ td High pass notch filter
+ figcaption
+ .reference #[span.table-count]
+ .caption.
+ Ειδικοί όροι που χρησιμοποιούνται
diff --git a/report/1_low_pass/1_low_pass.pug b/report/1_low_pass/1_low_pass.pug
index bab1fd6..f5ce985 100644
--- a/report/1_low_pass/1_low_pass.pug
+++ b/report/1_low_pass/1_low_pass.pug
@@ -1,37 +1,42 @@
+// Chapter title
h2 Κατωδιαβατό φίλτρο Inverse Chebyshev
-br
+br/
+
+// Chapter description/introduction
p.
Με βάση το ΑΕΜ (8261), υπολογίστηκαν οι προδιαγραφές του κατωδιαβατού φίλτρου προς σχεδίαση:
figure.block-center.width-15cm
- table.ui.celled.structured.table.teal.striped.center.aligned
+ table.ui.celled.table.teal.striped.center.aligned
thead
tr
th Προδιαγραφή
- th(colspan="2") Τιμή
+ th Τιμή
tbody
tr
- td f#[sub pass]
- td 1000
- td 500
+ td Pass frequency (f#[sub p])
+ td 5500 Hz
+ tr
+ td Pass radial frequency (ω#[sub p])
+ td 34557.519 rad/s
+ tr
+ td Stop frequency (f#[sub s])
+ td 11550 Hz
tr
- td f#[sub stop]
- td 1200
- td 500
+ td Stop radial frequency (ω#[sub s])
+ td 72570.790 rad/s
tr
- td a#[sub max]
- td(colspan="2") 0.6
+ td Min stop attenuation (a#[sub min])
+ td 23.75 dB
tr
- td a#[sub min]
- td(colspan="2") 24
+ td Max pass attenuation (a#[sub max])
+ td 0.35 dB
figcaption
- .reference Πίνακας 1
+ .reference #[span.table-count]
.caption.
Προδιαγραφές σχεδίασης κατωδιαβατού φίλτρου
-h3 Σχεδίαση φίλτρου
-//h4 Υπολογισμός συνάρτησης μεταφοράς
-//h4 Υλοποίηση συνάρτησης μεταφοράς
-//h4 Ρύθμιση κέρδους
-h3 Μελέτη συνάρτησης μεταφοράς στο Matlab
-h3 Υλοποίηση κυκλώματος στο Multisim
+// Sub-Chapters
+include 1_low_pass_design
+include 1_low_pass_transfer_function_matlab
+include 1_low_pass_transfer_function_multisim
diff --git a/report/1_low_pass/1_low_pass_design.pug b/report/1_low_pass/1_low_pass_design.pug
new file mode 100644
index 0000000..523ae9b
--- /dev/null
+++ b/report/1_low_pass/1_low_pass_design.pug
@@ -0,0 +1,128 @@
+h3 Σχεδίαση φίλτρου
+p.
+ Για τη σχεδίαση του φίλτρου ακολουθήθηκε η διαδικασία που περιγράφεται στο κεφάλαιο 9 των σημειώσεων του μαθήματος:
+
+figure.block-center.width-15cm
+ div.ui.list.ordered.celled.striped
+ div.item Υπολογισμός της τάξης του φίλτρου.
+ div.item Υπολογισμός της συχνότητας ημίσειας ισχύος.
+ div.item Υπολογισμός των πόλων του πρότυπου φίλτρου Chebyshev.
+ div.item Υπολογισμός των πόλων του αντίστροφου φίλτρου Chebyshev μέσω αντιστροφής των πόλων Chebyshev.
+ div.item Υπολογισμός των μηδενικών της συνάρτησης μεταφοράς.
+ div.item Ομαδοποίηση των ζευγών πόλων και μηδενικών ανά δύο. Με τον τρόπο αυτό προκύπτουν φίλτρα notch, LPN ή HPN, ανάλογα με τις σχετικές θέσεις πόλων και μηδενικών.
+ div.item Υλοποίηση των φίλτρων notch με βάση τα κυκλώματα του κεφαλαίου 7.
+ div.item Κλιμακοποίηση του κυκλώματος με στόχο τη μεταφορά στις πραγματικές συχνότητες και σε στοιχεία με πρακτικές (υλοποιήσιμες) τιμές.
+ div.item Έλεγχος των κερδών των μονάδων και ρύθμιση κέρδους με επιβολή απόσβεσης ή ενίσχυσης.
+
+h4 Υπολογισμός συνάρτησης μεταφοράς
+p Αρχικά σχεδιάζεται ένα πρότυπο κατωδιαβατό Chebyshev φίλτρο, το οποίο αργότερα να μετατραπεί στο επιθυμητό αντίστροφο Chebyshev.
+
+p Γίνεται κανονικοποίηση των συχνοτήτων ώστε να επιτευχθεί Ω#[sub s]=1 rad/s:
+
+p.latex-equation.
+ $$\Omega_p = \frac{\omega_p}{\omega_s} = \frac{34557.519}{72570.790} = 0.476\frac{rad}{s}$$
+
+p Υπολογίζεται η τάξη του φίλτρου χρησιμοποιώντας την εξίσωση #[span.course-notes-equation 9-137]:
+
+p.latex-equation.
+ $$n = \left \lceil \frac{cos^{-1}\bigg(\sqrt{\frac{10^{\frac{a_{min}}{10}}-1}{10^{\frac{a_{max}}{10}}-1}}\bigg)}{cos^{-1}(\frac{1}{\Omega_p})} \right \rceil = \left \lceil \frac{cos^{-1}\bigg(\sqrt{\frac{10^{2.375}-1}{10^{0.035}-1}}\bigg)}{cos^{-1}(2.1)} \right \rceil = \left \lceil \frac{4.6642}{1.373} \right \rceil = \left \lceil 3.397 \right \rceil = 4$$
+
+p.
+ Από τον παραπάνω τύπο φαίνεται ότι κατά τον υπολογισμό της τάξης του φίλτρου γίνεται στρογγυλοποίηση της τάξης προς τον επόμενο #[strong μεγαλύτερο] ακέραιο. Αυτό γίνεται επειδή δεν είναι δυνατή η υλοποίηση ενός φίλτρου ρητής τάξεως, έτσι είναι απαραίτητο η τάξη να στρογγυλοποιηθή. Η στρογγυλοποίηση είναι σημαντικό να γίνει προς τα επάνω (ceiling) ώστε να επιτευχθούν οι προδιαγραφές του φίλτρου. Μία πιθανή στρογγυλοποίηση προς τα κάτω θα είχε ως αποτέλεσμα την αποτυχία στη σχεδίαση.
+
+p.
+ Λόγω της στρογγυλοποίησης αυτής, αναμένεται μάλιστα να υπάρχει υπερκάλυψη σε τουλάχιστον μία από τις προδιαγραφές. Στη συγκεκριμένη περίπτωση, λόγω της επιλογής κανονικοποίησης ως προς την ω#[sub s], αναμένεται να υπάρχει υπερκάλυψη της προδιαγραφής a#[sub max].
+
+p.
+ Στη συνέχεια υπολογίζονται οι παράμετροι ε και α από τις εξισώσεις #[span.course-notes-equation 9-123] και #[span.course-notes-equation 9-92] αντίστοιχα:
+
+p.latex-equation.
+ $$\varepsilon = \frac{1}{\sqrt{10^{\frac{a_{min}}{10}}-1}} = \frac{1}{\sqrt{10^{2.375}-1}} = 0.065$$
+p.latex-equation.
+ $$\alpha = \frac{\sinh^{-1}(\frac{1}{\varepsilon})}{n} = \frac{\sinh^{-1}(\frac{1}{0.065})}{n} = 0.857$$
+
+p.
+ Υπολογίζεται η κανονικοποιημένη συχνότητα ημίσειας ισχύος χρησιμοποιώντας την εξίσωση #[span.course-notes-equation 9-139]:
+
+p.latex-equation.
+ $$\Omega_{hp} = \frac{1}{cosh(\frac{1}{n}cosh^{-1}(\frac{1}{\varepsilon}))} = \frac{1}{cosh(\frac{1}{4}cosh^{-1}(\frac{1}{0.065}))} = 0.7196\frac{rad}{s}$$
+
+p και στη συνέχεια μεταφέρεται στη πραγματική συχνότητα:
+
+p.latex-equation.
+ $$\omega_{hp} = \Omega_{hp} * \omega_s = 0.7196 * 72570.790 = 52222.58\frac{rad}{s}$$
+
+p.
+ Οι γωνίες Butterworth μπορούν να υπολογιστούν με βάση τον αλγόριθμο Guillemin ή να βρεθούν απευθείας από γνωστούς πίνακες γωνιών Butterworth. Για φίλτρο πέμπτης τάξης, οι γωνίες είναι:
+
+p.latex-equation.
+ $$\pm 22.5^\circ$$ και $$\pm 67.5^\circ$$
+
+p.
+ Με βάση τις εξισώσεις #[span.course-notes-equation 9-102] και #[span.course-notes-equation 9-103]:
+
+p.latex-equation.
+ $$\sigma_k = -\sinh(\alpha)*\cos(\theta)$$
+ $$\Omega_k = \cosh(\alpha)*\sin(\theta)$$
+
+p προκύπτουν οι πόλοι #[strong Chebyshev]:
+
+p.latex-equation.
+ $$\text{Pole 1: } -0.892\pm0.532\mathrm{i}$$
+ $$\text{Pole 2: } -0.369±1.284\mathrm{i}$$
+
+p.
+ Χρησιμοποιώντας τις εξισώσεις #[span.course-notes-equation 9-150] και #[span.course-notes-equation 9-151]:
+
+p.latex-equation.
+ $$\Omega_{0_k} = \sqrt{\sigma_k^2+\Omega_k^2}$$
+ $$Q_k = \frac{1}{2*\cos(\tan^{-1}(\frac{\Omega_k}{\sigma_k}))}$$
+
+p υπολογίζονται τα ω#[sub 0] και Q των πόλων αντίστοιχα:
+
+p.latex-equation.
+ $$\text{Pole 1: } \Omega_0 = 1.038 \text{, }Q = 0.582$$
+ $$\text{Pole 2: } \Omega_0 = 1.336 \text{, }Q = 1.809$$
+
+p.
+ Οι πόλοι αντιστρέφονται χρησιμοποιώντας την εξίσωση #[span.course-notes-equation 9-146] για τον υπολογισμό των ω#[sub 0#[sub k]], ενώ τα Q παραμένουν ίδια:
+
+p.latex-equation.
+ $$\omega_{0_k} = \frac{1}{\Omega_{0_k}}$$
+
+p.
+ Από τον μετασχηματισμό προκύπτουν οι πόλοι του #[strong αντίστροφου Chebyshev]:
+
+p.latex-equation.
+ $$\text{Pole 1: } \Omega_0 = 0.963 \text{, }Q = 0.582$$
+ $$\text{Pole 2: } \Omega_0 = 0.748 \text{, }Q = 1.809$$
+
+p.
+ Κατά τον μετασχηματισμό προκύπτουν επίσης, με βάση την εξίσωση #[span.course-notes-equation 9-143]:
+
+p.latex-equation.
+ $$\omega_{z_k} = \sec\big(\frac{k\pi}{2n}\big) \text{, } k=1,3,5,...$$
+
+p.
+ τα μηδενικά της συνάρτησης μεταφοράς;
+
+p.latex-equation.
+ $$\text{Zero 1: } 0\pm1.082\mathrm{i}$$
+ $$\text{Zero 2: } 0\pm2.613\mathrm{i}$$
+
+p.
+ Οι πόλοι και τα μηδενικά του φίλτρου φαίνονται στο παρακάτω διάγραμμα:
+
+figure.block-center.width-15cm
+ img(src="1_low_pass/assets/diagrams/inverse_chebyshev_zero_pole.svg").width-19cm
+ //- include assets/diagrams/inverse_chebyshev_zero_pole.svg
+ figcaption
+ .reference #[span.plot-count]
+ .caption.
+ Πόλοι και μηδενικά του αντίστροφου Chebyshev
+
+h4 Υλοποίηση συνάρτησης μεταφοράς
+p.
+
+h4 Ρύθμιση κέρδους
+p.
diff --git a/report/1_low_pass/1_low_pass_transfer_function_matlab.pug b/report/1_low_pass/1_low_pass_transfer_function_matlab.pug
new file mode 100644
index 0000000..271721a
--- /dev/null
+++ b/report/1_low_pass/1_low_pass_transfer_function_matlab.pug
@@ -0,0 +1 @@
+h3 Μελέτη συνάρτησης μεταφοράς στο Matlab
\ No newline at end of file
diff --git a/report/1_low_pass/1_low_pass_transfer_function_multisim.pug b/report/1_low_pass/1_low_pass_transfer_function_multisim.pug
new file mode 100644
index 0000000..359979f
--- /dev/null
+++ b/report/1_low_pass/1_low_pass_transfer_function_multisim.pug
@@ -0,0 +1 @@
+h3 Υλοποίηση κυκλώματος στο Multisim
\ No newline at end of file
diff --git a/report/1_low_pass/assets/diagrams/inverse_chebyshev_zero_pole.svg b/report/1_low_pass/assets/diagrams/inverse_chebyshev_zero_pole.svg
new file mode 100644
index 0000000..d88d782
--- /dev/null
+++ b/report/1_low_pass/assets/diagrams/inverse_chebyshev_zero_pole.svg
@@ -0,0 +1,139 @@
+
+
+
diff --git a/report/config.yaml b/report/config.yaml
deleted file mode 100644
index e51a8fc..0000000
--- a/report/config.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-plugins:
- - mathjax
\ No newline at end of file
diff --git a/report/config.yml b/report/config.yml
new file mode 100644
index 0000000..8f4a57c
--- /dev/null
+++ b/report/config.yml
@@ -0,0 +1,2 @@
+plugins:
+ - mathjax
diff --git a/report/report.pdf b/report/report.pdf
deleted file mode 100644
index c8cbf66..0000000
Binary files a/report/report.pdf and /dev/null differ
diff --git a/report/report.pug b/report/report.pug
index 0123cd9..af2cf08 100644
--- a/report/report.pug
+++ b/report/report.pug
@@ -1,32 +1,32 @@
.report-sidebar: p Σύνθεση Ενεργών και Παθητικών Κυκλωμάτων
-br
-br
-br
+br/
+br/
+br/
div.center
h2.no-count ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ
h2.no-count ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ
h2.no-count ΤΟΜΕΑΣ ΗΛΕΚΤΡΟΝΙΚΗΣ
- br
- br
- br
- br
+ br/
+ br/
+ br/
+ br/
h1#title ΣΥΝΘΕΣΗ ΕΝΕΡΓΩΝ ΚΑΙ ΠΑΘΗΤΙΚΩΝ ΚΥΚΛΩΜΑΤΩΝ
h3.no-count 7ο εξάμηνο
- br
- br
- br
- br
+ br/
+ br/
+ br/
+ br/
h3.no-count.
- Εισηγητής: Θεοχάρης Ι.
+ Εισηγητής: Θεοχάρης Ι.#[br/]
Φανάκης Απόστολος, 8261
- br
+ br/
span Θεσσαλονίκη 2018
div(style="page-break-before:always")
//Insert components table here!
-include 0_intro
+include 0_intro/0_intro
include 1_low_pass/1_low_pass
//- include 2_band_pass
//- include 3_band_elimination
diff --git a/report/report.scss b/report/report.scss
index 37819ef..9f4ed08 100644
--- a/report/report.scss
+++ b/report/report.scss
@@ -1,8 +1,13 @@
@import 'https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.0/semantic.min.css';
@import 'https://afeld.github.io/emoji-css/emoji.css';
+@import url('https://fonts.googleapis.com/css?family=Lato');
-$primary_color: #009688;
+// Constant attributes
$page-width: 17cm;
+/* #00b5ad ?? */
+$primary_color: #009688;
+$sidebar-width: 0.25in;
+$sidebar-height: 943px;
@page {
margin: 1cm 1cm 2cm 0cm;
@@ -31,7 +36,7 @@ body {
h2 {
font-size: 1.8em;
- counter-reset: h3;
+ counter-reset: h3 0 table-counter 0 plot-counter 0;
}
h2:before {
@@ -39,16 +44,37 @@ h2:before {
content: counter(h2) ". "
}
+h3 {
+ counter-reset: table-counter 0 plot-counter 0;
+}
+
h3:before {
counter-increment: h3;
content: counter(h2) "." counter(h3) ". "
}
+span.table-count:before {
+ counter-increment: table-counter;
+ content: "Πίνακας " counter(h2) "." counter(h3) "." counter(table-counter)
+}
+
+span.plot-count:before {
+ counter-increment: plot-counter;
+ content: "Διάγραμμα " counter(h2) "." counter(h3) "." counter(table-counter)
+}
+
h2.no-count:before, h3.no-count:before {
content: "";
counter-increment: none;
}
+h4:before {
+ content: "•";
+ display: inline-block;
+ margin-left: 12px;
+ margin-right: 5px;
+}
+
p {
line-height: 1.5em;
font-size: 1.1em !important;
@@ -60,9 +86,6 @@ a {
color: inherit;
}
-$sidebar-width: 0.25in;
-$sidebar-height: 943px;
-
.report-sidebar {
position: fixed;
left: -$sidebar-width;
@@ -171,4 +194,13 @@ figure {
.center {
text-align: center;
+}
+
+span.course-notes-equation {
+ color: $primary_color;
+}
+
+p.latex-equation {
+ border: 1px solid $primary_color;
+ border-radius: 4px;
}
\ No newline at end of file
diff --git a/report/report_temp.htm b/report/report_temp.htm
deleted file mode 100644
index 0f743eb..0000000
--- a/report/report_temp.htm
+++ /dev/null
@@ -1,308 +0,0 @@
-
-
-
yada
Με βάση το ΑΕΜ (8261), υπολογίστηκαν οι προδιαγραφές του κατωδιαβατού φίλτρου προς σχεδίαση: -
Προδιαγραφή | Τιμή | |
---|---|---|
fpass | 1000 | 500 |
fstop | 1200 | 500 |
amax | 0.6 | |
amin | 24 |
Plenty of CSS frameworks will make sure your documents will look clean and modern. Javascript frameworks can plot schemas, highlight code, or render maths equations the same way LaTeX does. Millions of people (and growing) are now fluent in these technologies. Shorthand languages like Pug and SCSS are finally making it fun to write HTML and CSS. (Headless) web browsers can easily turn all these technologies into PDF, on any platform.
-As an illustration, it took just one line to import the Semantic UI framework and style this document. Now look at this gorgeous table (don't pay attention to the content, it's place-holder)
-Here is another cool component provided by Semantic UI:
Next we will have a look at some differences between ReLaXed and other frameworks.
-Here are a few highlights of what you may win, or lose, using ReLaXed instead -of another solution. This section is of course open to contributions.
-Let us start with Markdown. This widely supported language (Github, NPM, etc.)
-became very popular due to its simple and friendly syntax close to plain text.
-Markdown also has cool editors and extensions. One example is
-markdown-preview-enhanced
-which can render plots, flowcharts, and equations.
ReLaXed has been specially extended so that it could support plot, flowchart, -and equations (using the same underlying libraries as -markdown-preview-enhanced), as illustrated in Figure 1. In addition, ReLaXed -allows you to write any kind of layout with boxes, sidebars, etc. HTML -elements are more fun to write with Pug (in markdown, HTML elements must be -written in plain HTML). You can define macros, use conditionals and loops, use -computed expressions using Javascript , and ReLaXed supports (S)CSS which is -pretty cool. Last but not least, you can write parts in markdown if you want -to . Yep, that was an emoji. Cost us one line of -code, to import Emoji CSS as a -stylesheet.
-Now what about LaTeX ? Sure, LaTeX is wide-spread in academic and publishing -communities, where it's typography and layout optimizations, and its -bibliography management tool are very appreciated. But LaTeX is also known for -its cryptic errors, its complex advanced syntax which not many make the effort -to learn, and as a consequence not many LaTeX venture on the creative side -with their own themes and layouts.
-Certainly the letter and paragraph spacings won't be as nice in ReLaXed (but -Google Chrome is still doing a very good job), but the syntax, clear error -messages, etc. will certainly make you happier. ReLaXed is also possibly -faster to render big documents (not entirely sure though ).
-