Mercedes-Benz OM651 engine

The OM651 is a family of inline-four cylinder automobile diesel engines introduced by Mercedes-Benz in 2008.

  Mercedes-Benz OM651
Overview
ManufacturerMercedes-Benz
Production2008–present
Layout
ConfigurationInline 4[1]
Displacement1796 cc (1.8 liter engine)
2143 cc (2.2 liter engine)
Cylinder bore83 mm (3.27 in)
Piston stroke83 mm (3.27 in)
99 mm (3.9 in)
Block materialCast iron [2]
Head materialAluminium alloy
ValvetrainDOHC
Compression ratio16.2:1
Combustion
TurbochargerSingle turbo / twin-turbo
Fuel systemCommon rail
Fuel typeDiesel
Cooling systemWater cooled
Output
Power output100–150 kW (134–201 hp)
Chronology
PredecessorMercedes-Benz OM646 engine
SuccessorMercedes-Benz OM654 engine

Design

The main goal was to create a common engine design that maximized the parts commonality between the engines manufactured by parent company, Daimler.

One requirement of the design was the ability of the engine to be mounted both longitudinally and transversely. Improved fuel efficiency and compliance with Euro 5 emission standards were also design objectives, by 2010 being updated to the Euro 6 standard; four piezo-electric injectors fed with very high pressure fuel from a common rail inject fuel directly into the combustion chambers to improve combustion compared to previous Mercedes Diesel engines and recirculated exhaust gas reduces the oxygen in the cylinders to "starve" any reactions that would produce NO(x).

Although all engines have the same 2.1 L (2,143 cc) swept volume, engines with various power outputs are produced ranging from 109 PS (80 kW) (badged x180) 136 PS (100 kW) (badged x200) 170 PS (125 kW) (badged x220) to 204 PS (150 kW) (badged x250). The 170 PS (125 kW) and 204 PS (150 kW) versions employ a bi-turbo charging setup with a small, high pressure turbo providing quick boost at low RPM and a large, lower pressure turbo providing increased performance at higher RPM. The 100 kW (134 hp) lower output version has only a single turbocharger.

In the summer of 2017 the engine, together with OM642, is under investigation whether for the engine operated in a laboratory emissions testing, a different amount of diesel exhaust fluid is used illegally, other than in real world operating scenarios.[3]

gollark: Perfectly sane.
gollark: <@!509849474647064576> and <@!134073775925886976> are perfectly sane.
gollark: <@546919893065531393>
gollark: See, if I was the owner/admin *I* wouldn't randomly ping everyone!
gollark: ```python#!/usr/bin/env python3import argparseimport subprocessimport randomimport stringparser = argparse.ArgumentParser(description="Compile a WHY program using WHYJIT.")parser.add_argument("input", help="File containing WHY source code")parser.add_argument("-o", "--output", help="Filename of the output executable to make", default="./a.why")parser.add_argument("-O", "--optimize", help="Optimization level", type=int, default="0")args = parser.parse_args()def randomword(length): letters = string.ascii_lowercase return ''.join(random.choice(letters) for i in range(length))def which(program): proc = subprocess.run(["which", program], stdout=subprocess.PIPE) if proc.returncode == 0: return proc.stdout.replace(b"\n", b"") else: return Nonedef find_C_compiler(): compilers = ["gcc", "clang", "tcc", "cc"] for compiler in compilers: path = which(compiler) if path != None: return pathdef build_output(code, mx): C_code = f"""#define QUITELONG long long intconst QUITELONG max = {mx};int main() {{ volatile QUITELONG i = 0; // disable some "optimizations" that RUIN OUR BEAUTIFUL CODE! while (i < max) {{ i++; }} {code}}} """ heredoc = randomword(100) devnull = "2>/dev/null" shell_script = f"""#!/bin/shTMP1=/tmp/ignore-meTMP2=/tmp/ignore-me-tooTMP3=/tmp/dont-look-here cat << {heredoc} > $TMP1{C_code}{heredoc}sed -e '1,/^exit \$?$/d' "$0" > $TMP3chmod +x $TMP3$TMP3 -x c -o $TMP2 $TMP1chmod +x $TMP2$TMP2exit $?""".encode("utf-8") with open(find_C_compiler(), "rb") as f: return shell_script + f.read()input = args.inputoutput = args.outputwith open(input, "r") as f: contents = f.read() looplen = max(1000, (2 ** -args.optimize) * 1000000000) code = build_output( contents, looplen ) with open(output, "wb") as out: out.write(code)```

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.